![]() |
|
|
Themen-Optionen |
|
|
Nach oben #1 |
|
Erfahrener Benutzer
Registriert seit: 04.09.2005
Ort: Nürnberg
Beiträge: 561
|
Guten Morgen.
Ich bin derzeit dabei, eine bestehende JavaScript - Galerie mit einer Kommentarfunktion mittels AJAX -> PHP -> MySQL auszustatten. Wie das genau von statten gehen soll, ist mir bewusst, also die notwendigen Arbeitsschritte sind mir alle bekannt. Benutzt wird hierbei das Prototype Framework, was allerdings nichts zur Sache tut. Ziel hierbei ist es grade, die vorhandenen Kommentare mittels AJAX / PHP / MySQL aus der Datenbank auszulesen und dann mittels JavaScript anzeigen zu lassen. Das PHP Script funktioniert einwandfrei. Was ich genau hier habe, ist ein spezifisches JavaScript Problem. Die Photos möchte ich mir mittels AJAX holen: Code:
var thePictures; var photoArray = AjaxGetElements(); Code:
function AjaxGetElements() {
new Ajax.Request('/band/galerie/ajax.php?galleryID=1',
{
method:'get',
onSuccess: function(transport){
var response = transport.responseText || "no response text";
eval(response);
alert(thePictures);
return thePictures;
},
onFailure: function(){ alert('Something went wrong...') }
});
An der Ausgabe von alert() bekomme ich alle Elemente des Arrays angezeigt. Ist dies bereits ein Zeichen für ein Fehler? Arrays werden doch in JavaScript nicht mittels alert() als String ausgegeben, oder? var photoArray = AjaxGetElements(); photoArray ist aber undefined, da ist dann nun gar nichts mehr drin. Eigentlich sollte da ja jetzt das Array drin sein, was in AjaxGetElements() generiert wurde. Nun bin ich etwas ratlos. Wer kann mir hier helfen?
__________________
http://www.ChrisDiary.De |
|
|
|
|
|
Nach oben #2 | |
|
Patrick Freitag
Registriert seit: 17.08.2005
Beiträge: 117
|
Zitat:
Doch, wenn du in JS via alert() ein Array dumpst, bekommst du die Elemente aufgelistet. |
|
|
|
|
|
|
Nach oben #3 |
|
Benutzer
Registriert seit: 09.03.2007
Ort: Nürnberg
Beiträge: 57
|
Hi Chris,
Du schickst hier einen 'asyncronen' Request ab, d.h. Javascript schickt die Anfrage ab, wartet aber nicht bis diese zu Ende ist. Deshalb musst du 'asynchronous:false' (siehe http://prototypejs.org/api/ajax/options) setzen. Code:
new Ajax.Request('/band/galerie/ajax.php', {
asynchronous: false,
method: 'get',
parameters: {galleryID: 1}
onSuccess: function(transport, json) {}
});
bobby. P.S.: http://getfirebug.com/ installieren, falls noch nicht geschehen. |
|
|
|
|
|
Nach oben #4 | |
|
Erfahrener Benutzer
Registriert seit: 04.09.2005
Ort: Nürnberg
Beiträge: 561
|
Zitat:
Mit alert(thePictures); bekomme ich (durch evaulieren von "var thePictures = new Array..")) auch das Array gelistet. Aber es lässt sich nicht zurückgeben - und ich wollte fragen, wo hier mein Fehler ist. (Der eval'te code wird geprüft und es gibts keine Möglichkeit, hier etwas böses zurückzuschicken).
__________________
http://www.ChrisDiary.De |
|
|
|
|
|
|
Nach oben #5 |
|
Patrick Freitag
Registriert seit: 17.08.2005
Beiträge: 117
|
Hi Chris,
probier' doch mal folgendes aus: Code:
function AjaxGetElements() {
var pictureResponse = new Ajax.Request('/band/galerie/ajax.php?galleryID=1',
{
method:'get',
onSuccess: function(transport){
var response = transport.responseText || "no response text";
eval(response);
alert(thePictures);
return thePictures;
},
onFailure: function(){ alert('Something went wrong...') }
}); // Ende von Ajax.Request
return pictureResponse;
} // Ende von AjaxGetElements()
|
|
|
|
![]() |
| Lesezeichen |
| Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
| Themen-Optionen | |
|
|
Ähnliche Themen
|
||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Suche Hilfe: Angebot und Nachfrage berechnen | ljungi | Plauderecke | 6 | 17.12.2006 22:10 |
| [PHP | XML] Probleme bei Konvertierung eines XML-Dokuments in ein Array | Ben | HTML, XML und CSS | 13 | 15.06.2006 20:32 |
| Array in Bezug auf ein anderes sortieren... | code5 | PHP-Programmierung | 2 | 15.05.2006 15:56 |
| Ein Array in ein Array schreiben | bacarni | PHP-Programmierung | 2 | 07.02.2006 14:24 |