CronJob-Service
bei SELFPHP mit ...
|
+ minütlichen Aufrufen
+ eigenem Crontab Eintrag
+ unbegrenzten CronJobs
+ Statistiken
+ Beispielaufrufen
+ Control-Bereich
Führen Sie mit den CronJobs von
SELFPHP zeitgesteuert Programme
auf Ihrem Server
aus. Weitere Infos
|
:: Anbieterverzeichnis ::
Globale Branchen
Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP
:: Newsletter ::
Abonnieren Sie hier den kostenlosen
SELFPHP Newsletter!
|
MySQLi/PDO/(MySQL) Anfänger, Fortgeschrittene oder Experten können hier Fragen und Probleme rund um MySQLi/PDO/(MySQL) diskutieren |
20.07.2007, 19:48:04
|
|
Administrator
|
|
Registriert seit: Jul 2004
Beiträge: 3.707
|
|
AW: Probleme mit array
Zitat:
Zitat von JuliusCaesar
ich hatte hier auf eine objektive Fehleranalyse gehofft ;)
|
Aus Sicht des Betrachters stimmt es ja auch ...
__________________
Gruss vt1816
Erwarte nicht, dass sich jemand mehr Mühe mit der Antwort gibt als Du Dir mit der Frage.
. . . . . Feedback wäre wünschenswert
Ich werde keinen privaten 1:1 Support leisten, außer ich biete ihn ausdrücklich an.
Ansosnten gilt: Hilfe ausserhalb dieses Thread (PN, WhatsApp, Skype, Mail, ICQ, etc...) nur per Barzahlung oder Vorauskasse!
Wenn man sich selbst als "Noob" bezeichnet, sollte man die Finger davon lassen.
Wenn man gewillt ist daran etwas zu ändern, lernt man Grundlagen!
|
20.07.2007, 21:43:42
|
SELFPHP Guru
|
|
Registriert seit: Jan 2004
Ort: Leipzig
Beiträge: 4.549
|
|
AW: Probleme mit array
lass dir das sql-statement mal ausgeben statt es auszuführen und gucke, ob es aussieht, du es gerne hättest.
Geändert von feuervogel (20.07.2007 um 21:43:57 Uhr)
|
21.07.2007, 01:07:36
|
|
SELFPHP Guru
|
|
Registriert seit: Dec 2003
Ort: Erfurt
Alter: 75
Beiträge: 4.001
|
|
AW: Probleme mit array
Zitat:
Zitat von JuliusCaesar
wenn ich deine Abfrage anwende,
|
Das ist nicht meine sondern Deine, aus der ich erst mal ein paar sinnfreie Kommatas entfernt hatte.
Zitat:
wie soll ich das denn in 1 Abfrage erledigen, ganz ohne array und schleife????
|
Handbuch lesen! Mit UPDATE kann man mehr als nur eine "Spaltenvariable" verändern.
Zitat:
ich hatte hier auf eine objektive Fehleranalyse gehofft ;)
|
Du meinst, wenn Du hier nocht etwas rumjammerst, wird das Konzept Deines Browsergames besser?
|
22.07.2007, 01:39:46
|
Junior Member
|
|
Registriert seit: Jul 2007
Beiträge: 225
|
|
AW: Probleme mit array
Zitat:
Zitat von feuervogel
lass dir das sql-statement mal ausgeben statt es auszuführen und gucke, ob es aussieht, du es gerne hättest.
|
hm ich habe mir mal alle abfragen ausgeben lassen, mal ne frage
es
Code:
UPDATE si_gebaeude SET stufe = 'rfem1' WHERE besitzer_id = 62 AND planeten_id = 1 AND geb_typ = 'rfem'
sollte nicht eigentlich für SET stufe= 'rfem1' ein Wert anstelle von rfem1 angezeigt werden??
Zitat:
Handbuch lesen! Mit UPDATE kann man mehr als nur eine "Spaltenvariable" verändern.
|
habe ich, kann es sein, dass du UPDATE mit INSERT verwechselst (mit INSERT gehts ohne Probleme)
habe extra nm nachgelesen im Handbuch
http://dev.mysql.com/doc/refman/5.1/de/update.html
es wird zwar erwähnt wie ich mehrere Spalten bei EIN UND DERSELBEN Bedingung updaten kann, aber nicht wies geht, dass ich verschiedene WHERE Bedingungen habe
ich hätte das jetzt so gemacht,dies ist aber genau identisch mit obiger Lösung (auch nach Lesen des Handbuchs)
und diese Abfrage kann ich doch nicht ohne for schleife ausführen (weil ja jeder einzelner wert dieser schleife abgearbeitet werden soll....)
PHP-Code:
$sql = UPDATE si_gebaeude SET stufe= '{$stufep1[$i]}' WHERE geb_typ = '{$geb[$i]}' AND planeten_id = 1 AND besitzter_id = 62;
|
22.07.2007, 04:04:54
|
|
SELFPHP Guru
|
|
Registriert seit: Dec 2003
Ort: Erfurt
Alter: 75
Beiträge: 4.001
|
|
AW: Probleme mit array
Zitat:
Zitat von JuliusCaesar
updaten kann, aber nicht wies geht, dass ich verschiedene WHERE Bedingungen habe
|
Deshalb schrieb ich ja, daß das Konzept mies ist.
Zitat:
ich hätte das jetzt so gemacht,dies ist aber genau identisch mit obiger Lösung (auch nach Lesen des Handbuchs)
und diese Abfrage kann ich doch nicht ohne for schleife ausführen (weil ja jeder einzelner wert dieser schleife abgearbeitet werden soll....)
|
1. im Handbuch findest Du die Spaltentypen SET (Mehrfachauswahl) und ENUM (Einfachauswahl). In einem SET/ENUM Feld können 64 Bits über einen Aliasnamen gesetzt u/o abgefragt werden.
2. es reicht wirklich aus, wenn Du pro User nur einen Datensatz benötigst.
3. jede zusätzliche SQL Abfrage kostet nämlich Zeit und ist deshalb Pfui.
Solche Projekte plant man vorher ordentlich und tippert nicht drauflos.
|
23.07.2007, 16:13:24
|
Junior Member
|
|
Registriert seit: Jul 2007
Beiträge: 225
|
|
AW: Probleme mit array
ich bin meinen code jetzt nm durchgegangen und konnte den Fehler beheben, die POST Variablen wurden nicht richtig an das array übergeben, jetzt klappts aber^^
Zitat:
1. im Handbuch findest Du die Spaltentypen SET (Mehrfachauswahl) und ENUM (Einfachauswahl). In einem SET/ENUM Feld können 64 Bits über einen Aliasnamen gesetzt u/o abgefragt werden.
2. es reicht wirklich aus, wenn Du pro User nur einen Datensatz benötigst.
3. jede zusätzliche SQL Abfrage kostet nämlich Zeit und ist deshalb Pfui.
|
@meikel:
ich habe jetzt extra nm das Handbuch gelesen, aber mir ist noch nicht klar worauf du hinaus willst..
1/2)Ist mir durchaus klar, dass ich Tabellen und spalten mit einem alias namen versehen kann, nur ich weiß nicht was es bringen soll, wenn ich die Spalten auf einmal mit einem andren namen ansprechen kann....
3)ich weiß, das viele SQL abfrage ein bissel länger dauern, aber mir ist keine andere Möglichkeit eingefallen, wenn du eine andere Möglichkeit mit aliasen weißt ,dann sage sie mir bitte ;) (und bitte keine Andeutungen) :wink:
mfg Julius
|
23.07.2007, 22:23:14
|
|
SELFPHP Guru
|
|
Registriert seit: Dec 2003
Ort: Erfurt
Alter: 75
Beiträge: 4.001
|
|
AW: Probleme mit array
Zitat:
Zitat von JuliusCaesar
@meikel:
ich habe jetzt extra nm das Handbuch gelesen, aber mir ist noch nicht klar worauf du hinaus willst..
|
Darauf:
http://dev.mysql.com/doc/refman/4.1/en/set.html
bzw.
http://dev.mysql.com/doc/refman/4.1/en/enum.html
Zitat:
1/2)Ist mir durchaus klar, dass ich Tabellen und spalten mit einem alias namen versehen kann, nur ich weiß nicht was es bringen soll, wenn ich die Spalten auf einmal mit einem andren namen ansprechen kann....
|
Bist Du ganz sicher, daß wir das selbe Handbuch meinen?
|
26.07.2007, 01:16:26
|
Junior Member
|
|
Registriert seit: Jul 2007
Beiträge: 225
|
|
AW: Probleme mit array
alles was in diesen beiden Artikeln steht, ist, wie man set/enum verwendet
aber ich verstehe immer noch nicht wie das it bei meinem Problem helfen soll????
Vllt redne wir aber auch aneinander vorbei
Wenn ich die Artikel richtig verstanden habe ist set für mehrere Werte und enum für 1 Wert.
da ich aber mehre Werte updaten will kann ich enum gleich weglassen.
Zitat:
Bist Du ganz sicher, daß wir das selbe Handbuch meinen?
|
ich hatte nur im 5er (bzw 5.1er ) gelesen, diese Artikel stammen aber aus dem Handbuch für 3.x und 4.x
aber vllt könntest du mir an einem Beispiel verdeutlichen was du meinst:
Code:
1.Abfrage : UPDATE si_gebaeude SET stufe= 20 WHERE geb_typ = 'rfem' AND planeten_id = 1 AND besitzter_id = 62;
2.Abfrage: UPDATE si_gebaeude SET stufe= 10 WHERE geb_typ = 'fem' AND planeten_id = 1 AND besitzter_id = 62;
das wären die 1. beiden Abfragen, die mein script ausführt,
wie genau kann man die jetzt zu einer Abfrage verschmelzen (ich habe ja unterschiedliche where Bedingungen)
danke schon mal für deine bisherige Hilfe
Julius
|
26.07.2007, 09:51:49
|
|
SELFPHP Guru
|
|
Registriert seit: Dec 2003
Ort: Erfurt
Alter: 75
Beiträge: 4.001
|
|
AW: Probleme mit array
Zitat:
Zitat von JuliusCaesar
alles was in diesen beiden Artikeln steht, ist, wie man set/enum verwendet
aber ich verstehe immer noch nicht wie das it bei meinem Problem helfen soll????
|
Beispiel:
rfem kann die Werte rfem1 .. rfem10 annehmen.
Plan A:
refem ist eine Integerspalte
update tabelle set rfem = rfem +1 ... where dies = das
Plan B:
rfem ist eine ENUM Spalte
rfem ENUM('none', 'rfem1', 'rfem2', 'rfem3') default 'none'
update tabelle set rfem = 'rfem2' ... where dies = das AND rfem = 'rfem1' AND ...
Plan C
erlaubt ist eine SET Spalte
erlaubt SET('none', 'rfem', ...) default 'none'
rfem ist eine ENUM Spalte
rfem ENUM('none', 'rfem1', 'rfem2', 'rfem3') default 'none'
update tabelle set rfem = 'rfem2' ... where dies = das AND find_in_set('rfem', erlaubt)>0 AND ...
Nach diesem Schema gestaltet, benötigst Du im Idealfalle je User und Planet nur einen einzigen Datensatz.
|
27.07.2007, 18:25:50
|
Junior Member
|
|
Registriert seit: Jul 2007
Beiträge: 225
|
|
AW: Probleme mit array
hey danke für deine Ausdauer mir zu helfen
ich glaube ich habe jetzt verstanden wie dus meinst, ich werde mal versuchen, das umzusetzen
thx
mfg Julius
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 19:24:05 Uhr.
|