ERLEDIGT
NEIN
NEIN
ANTWORTEN
8
8
ZUGRIFFE
2481
2481
EMPFEHLEN
-
20.03.10 11:07 #1
Hallo,
ich habe ein kleines Messagecenter.
Dort können User Nachrichten makieren.
Dazu müssen Sie einfach nur auf eine Flage klicken, und dann soll die Mail ID mit JS & AJAX & jQuery übergeben werden, und dann in einem PHP Script, der Eintrag in der DB geändert werden.
Wenn das erfolgreich geschehen ist, dann soll der Div neugeladen werden.
Das letzte ist kein Problem, auch eine Variable an eine JS Funktion zu übergeben, doch, wie kann ich jetzt mit AJAX & jQuery, die Variable weiter an das PHP Script leiten ohne das die Seite neu geladen wird?
Danke
-
20.03.10 11:27 #2
- Registriert seit
- May 2007
- Ort
- Dresden (Sachsen)
- Beiträge
- 1.960
jQuery hat doch so eine schöne Dokumentation, dass man schon beim Überfliegen der Seite das hier gefunden hätte:
Dabei sind folgendes die übergebenen Variablen:Code JavaScript:1 2 3 4
$.post("test.php", { name: "John", time: "2pm" }, function(data){ alert("Data Loaded: " + data); });
Und in data sind die von dem PHP-Skript ausgegeben Daten drin.Code JavaScript:1 2
/* Variablenname: Wert [, ...] */ { name: "John", time: "2pm" }
Nachzulesen hier: jQuery.post()Ich mag:- positive Bewertungen meiner Beiträge
- ein Danke für meine hilfreichen Beiträge
Dabei kann ich dir helfen: PHP --- Javascript --- Ruby --- Coffeescript --- CSS --- HTML --- Webtechnologien --- Shell --- UNIX
... noch was: falls du mit dem Thema hier fertig bist, dann kannst du es auch als erledigt markieren.
-
20.03.10 11:52 #3
Also ich habe mal folgendes versucht:
Code :1 2 3 4 5 6 7
<script> function flag_mail() { $.get("../../scripts/server.php", { flag_mail: "true", mail_id: "'.$mails_data->mail_id.'"}); } </script> <img src="http://www.tutorials.de/img/mainpage/flag_off.png" alt="flag" onclick="flag_mail();"/>
Die Server.php sieht dann so aus:
Aber es passiert rein gar nichtsPHP-Code:if(isset($_GET['flag_mail']) AND $_GET['flag_mail'] == true)
{
$sql_mail = 'UPDATE user_mail SET mail_flaged = "1" WHERE mail_id "'.$_GET['mail_id'].'"';
mysql_query($sql_mail) OR die(mysql_error());
}
-
20.03.10 12:16 #4
- Registriert seit
- May 2007
- Ort
- Dresden (Sachsen)
- Beiträge
- 1.960
Der kann dir doch auch nichts ausgeben, wenn du a) nicht den veränderten Text lädst und b) diesen dann nicht ausgibst (beispielsweise mit echo oder print).
Ich mag:- positive Bewertungen meiner Beiträge
- ein Danke für meine hilfreichen Beiträge
Dabei kann ich dir helfen: PHP --- Javascript --- Ruby --- Coffeescript --- CSS --- HTML --- Webtechnologien --- Shell --- UNIX
... noch was: falls du mit dem Thema hier fertig bist, dann kannst du es auch als erledigt markieren.
-
20.03.10 12:17 #5
Er ändert nichts in der DB, ich habe danach die DB geschaut und auch einen refresh der Seite gemacht.
-
20.03.10 12:23 #6
- Registriert seit
- May 2007
- Ort
- Dresden (Sachsen)
- Beiträge
- 1.960
Schau doch erstmal, ob die Aktualisierung durchgeführt wird, wenn du das Skript direkt aufrufst, also so in etwa:
server.php?flag_mail=true&mail_id=x (x muss durch die entsprechende ID ersetzt werden)
Außerdem funktioniert das hier auch nicht:
Ansonsten gibt es auch noch einen Unterschied zwischen "true" und true, denn das erste ist eine Zeichenkette, dass zweite ein boolscher Wert.Code :1 2 3 4 5 6
<script>[FONT=monospace] [/FONT]function flag_mail(){[FONT=monospace] [/FONT]$.get("../../scripts/server.php", { flag_mail: "true", mail_id: "[COLOR=Red][B]'.$mails_data->mail_id.'[/B][/COLOR]"});[FONT=monospace] [/FONT]}[FONT=monospace] [/FONT]</script>[FONT=monospace] [/FONT]<img src="http://www.tutorials.de/img/mainpage/flag_off.png" alt="flag" onclick="flag_mail();"/>Ich mag:- positive Bewertungen meiner Beiträge
- ein Danke für meine hilfreichen Beiträge
Dabei kann ich dir helfen: PHP --- Javascript --- Ruby --- Coffeescript --- CSS --- HTML --- Webtechnologien --- Shell --- UNIX
... noch was: falls du mit dem Thema hier fertig bist, dann kannst du es auch als erledigt markieren.
-
20.03.10 14:50 #7
Was du oben ansprichts, wegen:
'.$mails_data->mail_id.'
das wird durch php eingetragen, das ganze Script steht eigentlich in einer PHP Schleife.
Ich habe alles versucht, ich habe das mit true angepasst und auch direkt den Link angepasst, hat nichts gebracht.
Dann habe ich ihn ohne JS ausgefürht, also oben direkt in die Zeile eingeben, da hat er die DB Werte geändert.
Nur wenn ich es so machen will:
Code :1 2 3 4 5 6
<script> function flag_mail() { $.get("tpl/scripts/server.php?flag_mail=true&mail_id=7", { flag_mail: "true", mail_id: "'.$mails_data->mail_id.'"}); } </script>
passiert rein gar nichts
-
20.03.10 15:07 #8
- Registriert seit
- May 2007
- Ort
- Dresden (Sachsen)
- Beiträge
- 1.960
Falls das Verzeichnis tpl im Wurzelverzeichnis liegt, dann solltest du davor noch einen Schrägstrich einfügen, so dass das Ganze so aussieht:
Code JavaScript:1 2 3 4 5
<script> function flag_mail() { $.get("/tpl/scripts/server.php?flag_mail=true&mail_id=7", { flag_mail: "true", mail_id: "'.$mails_data->mail_id.'"}); } </script>
PS: Warum hängst du eigentlich die Parameter an die Datei an, wenn du sie außerdem noch als Parameter in der Funktion übergibst?Ich mag:- positive Bewertungen meiner Beiträge
- ein Danke für meine hilfreichen Beiträge
Dabei kann ich dir helfen: PHP --- Javascript --- Ruby --- Coffeescript --- CSS --- HTML --- Webtechnologien --- Shell --- UNIX
... noch was: falls du mit dem Thema hier fertig bist, dann kannst du es auch als erledigt markieren.
-
20.03.10 15:31 #9
Problem gelöst.
Ich habe den JS Teil in den Headbereich gepackt, dann habe ich die Funktion ein wenig verändert:
Code :1 2 3
function flag_mail(mail_id) { $.get("tpl/scripts/server.php", { flag_mail: "true", mail_id: +mail_id}); }
Und nun klappt es.
Danke für deine Hilfe.
Keine Ahnung warum ich es mir so schwer gemacht habe.
Gruß
NW
Ähnliche Themen
-
URL per LINK übergeben (Mit Ajax und JQuery)
Von RoterEstilete im Forum Javascript & AjaxAntworten: 4Letzter Beitrag: 08.12.10, 23:27 -
jQuery Variable übergeben?
Von lisali im Forum Javascript & AjaxAntworten: 20Letzter Beitrag: 12.06.10, 12:03 -
Variable an Funktion übergeben, welche AJAX response bearbeitet
Von Kai-Behncke im Forum Javascript & AjaxAntworten: 1Letzter Beitrag: 18.02.09, 20:24 -
Variable übergeben von Ajax nach php
Von jemont im Forum Javascript & AjaxAntworten: 3Letzter Beitrag: 14.09.07, 07:43 -
Variable per POST mit Ajax übergeben
Von soa im Forum Javascript & AjaxAntworten: 3Letzter Beitrag: 22.03.07, 16:57





Zitieren

Login





