Hi,
mein vielleicht etwas kryptischer Titel soll aussagen:
(Pseudo-)Arrays wie "wert[]" als name-Attribut im <input>-Tag funktionieren bekanntlich gut in PHP (s. a. PHP: Checkboxen komfortabel auswerten ), bereiten mir aber bei AJAX-Technik etwas Kopfzerbrechen.
Sei mal wieder sowas hier gegeben...(PHP-Zugriff wie gehabt über XMLHttpRequest-Objekt)
Beachtet werden muss hier, dass beim Aufruf der JS-Routine (anstelle der im SelfHTML-Aktuell-Link angegebenen PHP-Routine) eben NICHT mit [] gearbeitet werden darf!
Probiert es ggf. aus: es kommt in dem Fall die Fehlermeldung "nicht definiert".
Nun zu meiner eigentlichen Frage:
In jsPrepare() wird der Aufruf-String wie gehabt zusammengebaut:
Wie kann ich nun sichergehen, dass der in jsPrepare() *definitiv* als Array vorliegende param1 auch richtig in PHP ankommt?
Muss ich das vielleicht so schreiben?
Ich frag hier mal erst, damit ich den Sachverhalt begreife, statt wahllos herumzuprobieren...
Sternchenfrage:
Kann ich im <form>...</form> Block auch mit zweidimensionalen Arrays arbeiten?
Wäre in meinem Fall sehr sinnvoll, da ich hinterher eine Art Matrix verarbeiten muss.
mein vielleicht etwas kryptischer Titel soll aussagen:
(Pseudo-)Arrays wie "wert[]" als name-Attribut im <input>-Tag funktionieren bekanntlich gut in PHP (s. a. PHP: Checkboxen komfortabel auswerten ), bereiten mir aber bei AJAX-Technik etwas Kopfzerbrechen.
Sei mal wieder sowas hier gegeben...(PHP-Zugriff wie gehabt über XMLHttpRequest-Objekt)
Code:
<form name="suchform2" action="" onSubmit="jsPrepare('scriptname',feld1);return false;"> <input type="checkbox" name="feld1" value="5"> eins</td> <input type="checkbox" name="feld1" value="10"> zwei</td> <input type="checkbox" name="feld1" value="15"> drei</td> <input type="button" value="senden" onClick="jsPrepare('scriptname',feld1);return false;"> </form>
Probiert es ggf. aus: es kommt in dem Fall die Fehlermeldung "nicht definiert".
Nun zu meiner eigentlichen Frage:
In jsPrepare() wird der Aufruf-String wie gehabt zusammengebaut:
Code:
jsPrepare = function (ajaxPHP, param1) { var phpfile = ajaxPHP + ".php"; var enc=window.encodeURIComponent||window.escape; var paramStr='p1=' + enc(param1); toPHP(phpfile,paramStr); }
Muss ich das vielleicht so schreiben?
Code:
var paramStr='p1[]=' + enc(param1);
Sternchenfrage:
Kann ich im <form>...</form> Block auch mit zweidimensionalen Arrays arbeiten?
Wäre in meinem Fall sehr sinnvoll, da ich hinterher eine Art Matrix verarbeiten muss.
Kommentar