Vorstaedter
New member
Ich fang mal hier in der JS-Gemeinschaft an zu fragen :
In einem mehrstufigen Prozess wähle ich die Parameter für eine Datenbankabfrage aus. In jeder Stufe dieses Auswahlprozesses soll bekannt sein, wieviele Datensätze bereits selektiert sind. Dazu wird bei jeder Änderung der Abfrage ein AJAX-Request mit den aktuellen Abfrageparametern an die Datenbank geschickt und ein mit
$satzzahl = mysqli_num_rows($resultat);
ermittelter Wert vom Server zurückgegeben. Der wird dann in einem Fließtext an einer mit
<span id='idsatzzahl'>", 12345 ,"</span>
markierten Stelle mittels
document.getElementById('idsatzzahl').innerHTML = req2.responseText;
korrekt eingefügt. Das funktioniert problemfrei.
Die endgültige Satzzahl wird für diverse Auswertungen als Begrenzer für "for-Schleifen" gebraucht und deshalb auch gleich mit
satzzahl = document.getElementById('idsatzzahl').innerHTML;
in die (globale) JS-Variable "satzzahl" geschrieben.
Zum Abschluß des Auswahlprozesses werden alle für die weiteren Auswertungen erforderlichen Parameter in ein Cookie geschrieben, aus dem sich die dann folgenden Scripte "bedienen" können :
erasecookie(); // löschen von evtl. altem cookie
document.cookie = "Cookie" + "=" + land+"="+region+"="+ort+"="+jahr+"="+thema+"="+satzzahl+"="+anzeit; path="/";
Im Cookie stehen dann auch alle Parameter korrekt drin, nur für den Parameter 'satzzahl' enthält das Cookie den Wert "undefined".
Testweise habe ich mir die JS-Variable 'satzzahl' mit
alert ("Satzzahl = "+satzzahl);
ausgeben lassen und erhalte auch das erwartete Ergebnis, wobei jedoch zwischen dem String "Satzzahl =" und dem Wert für 'satzzahl' viele über mehrere Zeilen verteilte Leerzeichen ausgegeben werden, bevor der (richtige) Wert ausgegeben wird.
Ich habe überhaupt keinen Plan mehr, wo ich den Fehler suchen soll; im MYSQL, im PHP oder im JS. Bin völlig ideenlos und bitte um Hilfe.
Komplette Listings poste ich bei Bedarf gerne.
Dank und Gruß
Winfried
In einem mehrstufigen Prozess wähle ich die Parameter für eine Datenbankabfrage aus. In jeder Stufe dieses Auswahlprozesses soll bekannt sein, wieviele Datensätze bereits selektiert sind. Dazu wird bei jeder Änderung der Abfrage ein AJAX-Request mit den aktuellen Abfrageparametern an die Datenbank geschickt und ein mit
$satzzahl = mysqli_num_rows($resultat);
ermittelter Wert vom Server zurückgegeben. Der wird dann in einem Fließtext an einer mit
<span id='idsatzzahl'>", 12345 ,"</span>
markierten Stelle mittels
document.getElementById('idsatzzahl').innerHTML = req2.responseText;
korrekt eingefügt. Das funktioniert problemfrei.
Die endgültige Satzzahl wird für diverse Auswertungen als Begrenzer für "for-Schleifen" gebraucht und deshalb auch gleich mit
satzzahl = document.getElementById('idsatzzahl').innerHTML;
in die (globale) JS-Variable "satzzahl" geschrieben.
Zum Abschluß des Auswahlprozesses werden alle für die weiteren Auswertungen erforderlichen Parameter in ein Cookie geschrieben, aus dem sich die dann folgenden Scripte "bedienen" können :
erasecookie(); // löschen von evtl. altem cookie
document.cookie = "Cookie" + "=" + land+"="+region+"="+ort+"="+jahr+"="+thema+"="+satzzahl+"="+anzeit; path="/";
Im Cookie stehen dann auch alle Parameter korrekt drin, nur für den Parameter 'satzzahl' enthält das Cookie den Wert "undefined".
Testweise habe ich mir die JS-Variable 'satzzahl' mit
alert ("Satzzahl = "+satzzahl);
ausgeben lassen und erhalte auch das erwartete Ergebnis, wobei jedoch zwischen dem String "Satzzahl =" und dem Wert für 'satzzahl' viele über mehrere Zeilen verteilte Leerzeichen ausgegeben werden, bevor der (richtige) Wert ausgegeben wird.
Ich habe überhaupt keinen Plan mehr, wo ich den Fehler suchen soll; im MYSQL, im PHP oder im JS. Bin völlig ideenlos und bitte um Hilfe.
Komplette Listings poste ich bei Bedarf gerne.
Dank und Gruß
Winfried
Zuletzt bearbeitet von einem Moderator: