Sende Array mit Ajax an PHP-Skript
Habe ich array aus Funktion .push. In der Reihe ist, sehr große Datenmengen. Wie ist der beste Weg, schickt das PHP-Skript?
dataString = ??? ; //array?
$.ajax({
type: "POST",
url: "script.php",
data: dataString,
cache: false,
success: function(){
alert("OK");
}
});
script.php:
$data = $_POST['data'];
//here i would like use foreach:
foreach($data as $d){
echo $d;
}
Wie ist der beste Weg dafür?
InformationsquelleAutor der Frage Paul Attuck | 2012-01-25
Du musst angemeldet sein, um einen Kommentar abzugeben.
Kodieren der Daten-string in JSON.
In Ihrem PHP -
Hinweis
Beim senden von Daten via POST, muss es so ein keyvalue-pair-Mädchen.
Damit
data: dataString
ist falsch. Stattdessen tun:
data: {data:dataString}
InformationsquelleAutor der Antwort xbonez
http://api.jquery.com/serializeArray/
InformationsquelleAutor der Antwort John x
Daten in jQuery
ajax()
Funktion akzeptiert anonyme Objekte als Eingabe, siehe Dokumentation. Also Beispiel für das, was du suchst ist:Können Sie auch schreiben, POST/GET Abfrage auf Ihre eigenen, wie
key=val&key2=val2
aber würden Sie haben, um die Flucht selbst, was unpraktisch ist.InformationsquelleAutor der Antwort Vyktor
dataString schlägt vor, die Daten formatiert in einen string (und vielleicht delimted durch ein Zeichen).
wenn dataString ist kein string, sondern tatsächlich ein array (was deine Frage zeigt), die JSON verwenden.
InformationsquelleAutor der Antwort RvdK