Don Stefano
Erfahrenes Mitglied
Hallo again,
ich hab jetzt stundenlang an einem Problem gewerkelt, dass ich mir einfach nicht erklären kann.
Ich habe eine Art Steuerdatei, die die Vorgabe von Befragungen regelt. Diese Datei includet dann verschiedene andere Dateien. U.a. eine, die das Speichern von Ergebnissen einer Befragung ermöglichen soll. Und eine andere, die die eigentlichen Fragen der Befragung vorgibt.
Die folgende Abfragenverschachtelung in der Datei, die zum speichern der Eingaben dient, scheint durchaus auch zu funktionieren (zumindest wird in die Datenbank geschrieben, was soll.)
Das Ganze soll aber nur geschehen, wenn der zaehler=1 ist (also nur beim ersten includen dieser Seite). Daher steht alles in einem IF () {} Block...
Nun habe ich nach dem Einbinden dieser Speicher-Datei, dass Problem, dass sich der Zaehler, der in der Frage-Vorgabedatei erhöht wird nicht mehr verändert. Dieser bleibt bei 1 oder 2 stehen, was dazu führt, dass immer die gleiche Frage vorgegeben wird..
Entferne ich aus dem obigen Code aber die "IF ($zaehler = 1) {}" Abfrage, in die alles eingebettet ist, und lasse nur den Rest stehen, läuft alles einwandfrei.
Wie kann eine solche IF Abfrage (siehe Code) Einfluss ausüben, auf die Inkrementierung des Zaehlers auf einer anderen Seite (bzw. im Anschluss)
Ich verstehe es nicht im Geringsten. Sieht jemand von euch einen Fehler in dieser Abfragesyntax bzw. hat eine Erklärung für dieses Phänomen ?
ich hab jetzt stundenlang an einem Problem gewerkelt, dass ich mir einfach nicht erklären kann.
Ich habe eine Art Steuerdatei, die die Vorgabe von Befragungen regelt. Diese Datei includet dann verschiedene andere Dateien. U.a. eine, die das Speichern von Ergebnissen einer Befragung ermöglichen soll. Und eine andere, die die eigentlichen Fragen der Befragung vorgibt.
Die folgende Abfragenverschachtelung in der Datei, die zum speichern der Eingaben dient, scheint durchaus auch zu funktionieren (zumindest wird in die Datenbank geschrieben, was soll.)
Das Ganze soll aber nur geschehen, wenn der zaehler=1 ist (also nur beim ersten includen dieser Seite). Daher steht alles in einem IF () {} Block...
PHP:
//Überprüfen, ob ein Eintrag "benutzerid" bereits fuer den Teilnehmer existiert: num_rows>0 heisst hier "existiert schon".
//Existiert er nicht, soll er angelegt werden.
IF ($zaehler = 1) {
$result = $db->query("select * from $ergebnis where besitzerid='$besitzerID'");
if ($db->errno) die("Fehler beim Anlegen des Benutzers.");
if (!$result->num_rows>0) {
$db->query("insert into $ergebnis (besitzerID) values('$besitzerID')");
if ($db->errno) die("Fehler beim Anlegen des Benutzers.");
$db->close();
}
}
Nun habe ich nach dem Einbinden dieser Speicher-Datei, dass Problem, dass sich der Zaehler, der in der Frage-Vorgabedatei erhöht wird nicht mehr verändert. Dieser bleibt bei 1 oder 2 stehen, was dazu führt, dass immer die gleiche Frage vorgegeben wird..
Entferne ich aus dem obigen Code aber die "IF ($zaehler = 1) {}" Abfrage, in die alles eingebettet ist, und lasse nur den Rest stehen, läuft alles einwandfrei.
Wie kann eine solche IF Abfrage (siehe Code) Einfluss ausüben, auf die Inkrementierung des Zaehlers auf einer anderen Seite (bzw. im Anschluss)
Ich verstehe es nicht im Geringsten. Sieht jemand von euch einen Fehler in dieser Abfragesyntax bzw. hat eine Erklärung für dieses Phänomen ?