per Ajax zurückgeben was eine php-Datei ausgibt
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
benutzen
bereich
bibliothek
code
date
datei
dumme frage
fehler
folgenden funktionen
frischling
funktion
geschweiften klammern
hilfe
klammern
knopf
kurzer text
machen
parameter
text
transport
-
Ich bin zwar noch ein frischling in Ajax, aber vielleicht könnt ihr mir weiterhelfen. Ich möchte einen Text, der von einer php datei erzeugt wird per ajax immer wieder ausgeben lassen.
in Meiner html Datei hab ich das Feld wo der Text stehen soll und ein Knopf der bei Bestätigung den Text anzeigen soll, dass sieht dann so aus:
<div name=\"text\" id=\"text\">noch nix</div><br />
<input type=\"button\" value=\"zeigeText\" onclick=\"get_text();\">
dann hab ich in der selben html Datei noch die folgenden Funktionen eingebaut:
function show_text( originalRequest ) {
document.getElementById(\'text\').innerHTML = originalRequest.responseText;
}
function get_text() {
var myAjax = new Ajax.Request(
\"text.php\",
{ method: \'get\', onComplete: show_text }
);
}
und in der text.php steht zum test nur ein kurzer Text:
<?php echo \"Jetzt ist es \" . date(\"r\"); ?>
Leider wird mir der Text von der text.php nicht angezeigt wenn ich auf den Button drücke. Könnt ihr mir irgendwie weiterhelfen? -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Du benutzt das Javascript Bibliothek Prototype, nicht wahr? Vll, ist die Funktion Ajax.Updater() hier geschickter wie Ajax.Request(). Diese Funktion aktualisiert die <div> automatisch, nachdem sie die Seite per Ajax geladen hat.
Wie man es benutzt: http://www.prototypejs.org/learn/introduction-to-ajax
Einfach auf der Seite nach \"Ajax.Updater\" suchen
Ryan
(P.S. Falls du Ajax.Request() benutzen willst:
function get_text() { var myAjax = new Ajax.Request( \"text.php\", { method: \'get\', onComplete: show_text(transport) } ); }
show_text(transport), da liegt der Fehler ;) )
Beitrag geändert: 25.4.2008 16:53:58 von ryanblack -
danke, deine hilfe hat mich schon etwas weitergebracht, aber
leider funktioniert es immer noch nicht. Jetzt habe ich beim Firefox mal die Fehler-Console gefunden und die meldet den Fehler das get_text() nicht gefunden werden kann, woran kann das liegen?
hier nochmal der java script code:
<script src=\"prototype.js\" type=\"text/javascript\">
function show_text( transport ) {
document.getElementById(\'text\').innerHTML = originalRequest.responseText;
}
function get_text() {
var myAjax = new Ajax.Request(
\"text.php\",
{ method: \'get\', onComplete: show_text }
);
}
</script>
Beitrag geändert: 25.4.2008 18:58:45 von studidating -
show_text(transport), da liegt der Fehler ;)
Ähm... Damit meinte ich in den geschweiften Klammern von Ajax.Request():
falsch{ method: \'get\', onComplete: show_text }
richtig{ method: \'get\', onComplete: show_text(transport) }
Und die Parametern der Funktion show_text() nicht verändern:
function show_text(originalRequest) { ... }
Ryan
(Jetzt mal eine dumme Frage: hast du den Javascript Code auch richtig in die HTML Datei eingebaut? Das macht man nämlich so: Man stellt den JavaScript Code in <script type=\"text/javascript\"> und </script>, das wiederum in <head> Bereich der HTML Datei sein sollte)
-
Problem gelöst:-)
ja, ich hab alles richtig eingebaut gehabt,
nachdem ich bei der get_text( ) in den Klammern ein Leerzeichen geschrieben hab, kommt jetzt auch kein Fehler mehr (wieso auch immer, ist mir auch nicht logisch). So und dann hab ich, das transport wieder mit originalRequest ersetzt, weil es immer noch nicht ging (obwohl kein Fehler kam). Und wer hätte es gedacht, es geht nun:-) Trotzdem vielen Dank für deine Hilfe.
Beitrag geändert: 25.4.2008 19:24:20 von studidating -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage