Autor |
Nachricht |
LioGetz
Threadersteller
Dabei seit: 24.03.2003
Ort: Aachen
Alter: 45
Geschlecht:
|
Verfasst Mo 31.03.2008 21:34
Titel [AJAX] jQuery Post-Formular |
 |
|
Hi @all,
ich bin gerade dabei mich in jQuery einzuarbeiten - einige Dinge klappen auch schon so wie ich will - nur bei diversen Dingen hapert es noch ein wenig am Verständnis...Die Doku ist da nicht gerade aussagekräftig (an Beispielen) und seltsamer Weise hab ich bei Google auch nicht so recht Glück...aber vielleicht hier ...
ALSO, ich will eigentlich nur ein simples Formular per POST abschicken - aber das über jQuery AJAX. Ich habe mich versucht danach zu richten, aber es klappt nicht. Vielleicht mache ich ja noch nen groben Denkfehler.
(relevanter) HTML-Code:
Code: |
<form action="" method="POST" id="main" onSubmit="send_Data();">
<input type="text" id="message" />
<input type="text" id="email" />
<input type="submit" value=" Absenden " />
</form>
|
(komplette) JS-Datei (im Head drauf verwiesen, natürlich auch die jQuery.js eingebunden ):
Code: |
function send_Data() {
$.post("input.php",{
message: $("#message").val(),
email: $("#email").val(),
}
return false;
}
|
Das .val() war mir übrigens auch neu, aber mit .value klappt es genauso wenig...
In der input.php steht dann die übliche DB-Anweisung drin um die übergebene $_POST['message'] und $_POST['email'] in die DB einzutragen. An der Datei wirds wohl auch nicht liegen (denke ich), da bei direktem Aufruf der input.php aus dem Formular, der Eintrag in die DB funktioniert. D.h. für mich es muss an der "Weiterleitung" von der JS an das PHP-Script irgendwas nich stimmen.
Als "Fehlermeldung" passiert einfach nix...d.h. in der DB kommt nix an. Zusätzlich verstehe ich auch nicht, das bei nem Reload der Seite, die übliche Firefox-Warnung kommt "Achtung, sie versenden erneut POST-Daten...blabla". Das sollte bei nem vernünftigen AJAX-Request doch auch nicht auftauchen, oder?
Kann mir hier einer auf die Sprünge helfen?? Wie gesagt, bin noch nich so fit im AJAX/jQuery-Kram, vielleicht hab ich ja noch nen grundsätzlichen Denkfehler...(z.B. kann ich in der input.php trotzdem per $_POST...auf die Variablen zugreifen? In der JS Funktion steht ja nur "message" bzw. "email" ??). Kommt mir auch alles arg kurz/einfach vor, im Gegensatz was ich bisher an ellenlangen HTTPXMLRequest gesehen habe...aber ich dachte mir, vielleicht ist das in dem Framework ja schon alles schön in die $.post Funktion gepackt
Danke im voraus
CU
Lio
Zuletzt bearbeitet von LioGetz am Mo 31.03.2008 21:38, insgesamt 1-mal bearbeitet
|
|
|
|
 |
dastef
Dabei seit: 03.11.2003
Ort: -
Alter: -
Geschlecht:
|
Verfasst Mo 31.03.2008 21:51
Titel
|
 |
|
als erstes gehört da wohl ein firebug hinweis platziert .. den scheinst
du bisher nicht zu haben bzw auf jeden fall nicht zu nutzen - das ge-
hört nachgeholt!
ansonsten schau dir mal jquery.form.js - das macht die ganze sache
auch nochmal anständig einfacher
|
|
|
|
 |
Anzeige
|
|
 |
LioGetz
Threadersteller
Dabei seit: 24.03.2003
Ort: Aachen
Alter: 45
Geschlecht:
|
Verfasst Mo 31.03.2008 22:00
Titel
|
 |
|
// edit:
OK, war (vorerst) n Syntax-Fehler .
Es war ne Klammer zu wenig, jetzt sieht es so aus:
Code: |
function send_Data() {
$.post("set_messages.php"),{
message: $("#message").val(),
email: $("#email").val()
}
return false();
}
|
Firebug zeigt "0 Errors", aber bei der DB kommt immer noch nix an
Zuletzt bearbeitet von LioGetz am Mo 31.03.2008 22:29, insgesamt 1-mal bearbeitet
|
|
|
|
 |
LioGetz
Threadersteller
Dabei seit: 24.03.2003
Ort: Aachen
Alter: 45
Geschlecht:
|
Verfasst Di 01.04.2008 12:14
Titel
|
 |
|
So, neuer Tag - neues Glück...aber der Erfolg lässt noch etwas auf sich warten .
Ich habs jetzt auch mal mit $.ajax versucht - mit dem selben Ergebnis .
Hat(te) denn keiner das selbe Problem ?!
Wäre ja schon über ein "vernünftiges" Bsp. glücklich - ne "normale" POST-Anfrage die per jQuery ans PHP-Script geht kann ja eigentlich nicht so exotisch sein ...alles was ich bisher im Netz gefunden habe hat mich aber nicht wirklich weiter gebracht...Sowas oder sowas hier behandelt NIE stinknormale Input-Felder...ich werd noch bekloppt
Thx im voraus
CU
Lio
|
|
|
|
 |
pixelpapst303
Dabei seit: 06.07.2006
Ort: hamburg
Alter: 51
Geschlecht:
|
|
|
|
 |
m
Moderator
Dabei seit: 18.11.2004
Ort: -
Alter: -
Geschlecht:
|
Verfasst Di 01.04.2008 12:50
Titel
|
 |
|
data =
Code: | $("form").serialize(); |
oder
Code: | name=John&location=Boston |
so zeigt es doch auch die Doku oder nicht?
|
|
|
|
 |
LioGetz
Threadersteller
Dabei seit: 24.03.2003
Ort: Aachen
Alter: 45
Geschlecht:
|
Verfasst Di 01.04.2008 12:57
Titel
|
 |
|
Was soll denn
Code: |
$("form").serialize();
|
machen?
Und in dem John & Boston Bsp. sind die Werte ja immer gleich - ich brauch aber die werte aus meinem $_POST[message], bzw. email...Genau das ist ja mein Problem, wie ich auf die Werte vom Input feld zugreifen kann, bzw. ans PHP-Script per $.post weiterleiten kann...
Ich benutze zwar kein ASP (geschweige denn das ich weiß was das MVC Framework ist ), aber das sollte ja auch eigentlich mit PHP gehen...
Ich versuchs gleich mal - vielleicht kommt ja was bei rum...
Thx,
CU
Lio
|
|
|
|
 |
m
Moderator
Dabei seit: 18.11.2004
Ort: -
Alter: -
Geschlecht:
|
Verfasst Di 01.04.2008 13:04
Titel
|
 |
|
Wirf doch mal einen Blick in die Doku
Und du kannst das natürlich auch variable gestalten indem du den String aus Varialben zusammensetzt.
Du kannst auch den Typ des Datenformates angeben, steht auch in der Doku
Zuletzt bearbeitet von m am Di 01.04.2008 13:07, insgesamt 2-mal bearbeitet
|
|
|
|
 |
|
|
 |
Ähnliche Themen |
Wordpress: Probleme einen Post über Ajax zu laden
jquery php und ajax
jQuery / AJAX - Teilbereich nachladen
Buchempfehlungen WordPress / AJAX / jQUERY
PHP/MySQL, JQuery/Javascript, (AJAX) lernen
Smooth Contact Form with Ajax, PHP, mySQL and jQuery?
|
 |