Problem mit $JQuery.ajax(...) POST Daten werden nicht gesendet

marcel_t

Grünschnabel
Hallo,

ich habe in JQuery folgenden Code-Abschnitt der mittels AJAX POST-Daten an eine PHP-Skript schicken soll:

PHP:
            jQuery.ajax({
              url: url,              
              type: "POST",
              data: postData
            });
In url steckt meine URL, das stimmt soweit. Allerdings kommt postData nicht an meinem PHP-Skript an (enthält sowas wie: user_input_value=12345).

Eigentlich müsste doch jetzt POST folgendes an das Skript senden:
PHP:
meine.php?meineWerte=XX&user_input_value=12345
Macht er aber nicht! Sondern nur:
PHP:
meine.php?meineWerte=XX&
Was mache ich denn falsch? Fehlt da noch etwas? Habt ihr vielleicht ne Idee?
 
Für die Methode gibt es die Shorthand function jQuery.post.

Was ist denn postData? Ein String? Ein Array?
Willst du ein Formular übermitteln?

Fragen über Fragen die mit ein bischen mehr Code gelöst werden können ;)
 
Hi :)

Die Shorthand Funktion ist ja im Prinzip das Gleiche nur in anderer Form ("This is a shorthand Ajax function, which is equivalent to: $.ajax({
...)"
) ;)

PostData ist ein String und wird so erstellt (innerhalb der gleichen JQuery Funktion):
PHP:
var postData = jQuery(this).parent().find(".user_input_value").serialize();
Ein alert(postData) ergibt somit, wie unten genannt, folgendes: user_input_value=12345

Somit sollte im PHP-Skript folgende Ausführung:
PHP:
var_dump($_POST["user_input_value""])
das ergeben: 12345
Tut es aber leider nicht, da er user_input_value mir anscheind nicht als POST übergibt! :(

Ich such ja schon wie ein Wilder im Netz nach Lösungen aber es scheint mir als bin ich der Einzige mit diesem Problem! Ich glaube der "Fehler" ist ganz einfach, nur ich find ihn einfach nicht..
 
Vielleicht als kleiner Nachtrag:

Folgendes (ist ja im Prinzip das Gleiche) hat auch nicht die richtige Lösung gebracht:

PHP:
var data = jQuery(this).parent().find(".user_input_value").serialize();
JQuery.post(url, {user_input_value: data});
 
Moin Marcel,

eigentlich ist da alles korrekt, es sollte so funktionieren, wie du es dir vorstellst.

Warum es nicht funktioniert?...Könnte man bspw. herrausfinden, wenn man das Ganze in Aktion sieht.
 
Da muss ich Sven recht geben.

Ansonsten kann man nur wilde vermutungen anstellen.
Wie wird das Script denn aufgerufen? Per click auf einen form submit button? Falls ja , fehlt eventuell das return false?
Ist vielleicht in deiner php etwas falsch? Log files anschauen oder einfach mal nur ein statisches echo 'works'; ausgeben.
 
Danke an Euch beide..

Das Skript wird über ein <a> Attribut aufgerufen, wobei man auf ein <span> zugreift/klickt. Das return false ist vorhanden.
Ich vermute den Fehler in der php-Datei, das die weiterverarbeitende Funktion nicht wie gewünscht aufgerufen wird. Zumindest weiß ich jetzt das der Fehler nicht bei JQuery.ajax(...) liegt. Das hilft mir bei der Fehlersuche schon etwas weiter.. Danke :)
 

Neue Beiträge

Zurück