• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Mit Ajax Datei von PHP abrufen

  • Ersteller Ersteller Gelöschtes Mitglied 30569
  • Erstellt am Erstellt am
G

Gelöschtes Mitglied 30569

Guest
Hallo zusammen,

ich erstelle in PHP eine Datei mit der header() Funktion. Soweit funktioniert alles, nur wenn ich es mit einer Javascript Ajax Abfrage holen möchte funktioniert es verständlicherweise nicht. Es ist mir auch klar wieso. Meine Frage ist nun, wie ich die Datei abrufen kann. Evtl. über ein Popup? (ich muss halt noch Daten an den Server senden)
Oder über ein iFrame?

Simon Seifried
 
Tuts halt leider nicht. Wenn ich die php Datei normal aufrufe bekomme ich eine Datei zurück. Wenn ich über ein httpobjekt gehe bekomme ich keine Datei zurückgeliefert, sondern nur die Daten ohne header()...

Das liefert mir nun den Inhalt der Datei (im speziellen Fall eine csv, jedoch nicht eine csv Datei sondern die Zeichenkette)

Code:
function abc(selectFormId1,selectFormId2,selectFormId3,selectFormId4)
{
    resetTimeout();
    var selectForm1 = document.getElementById(selectFormId1);
    var selectForm2 = document.getElementById(selectFormId2);
    var selectForm3 = document.getElementById(selectFormId3);
    var selectForm4 = document.getElementById(selectFormId4);
   
   
  

    httpObject = getHTTPObject();
                        if (httpObject != null)
                        {
                            //php-Datei auf dem Server aufrufen
                            httpObject.open("POST", 'abc.php', true);
                            httpObject.setRequestHeader("Content-type","application/x-www-form-urlencoded");
                            httpObject.send('a='+a+'&b='+b+'&c='+c+'&d='+d+'&e='+e);
                            httpObject.onreadystatechange = function()
                            {
                                if(httpObject.readyState == 4 && httpObject.status==200)
                                {

                                        if (httpObject.responseText == "false")
                                        {
                                            nachricht('Fehler - bitte erneut versuchen');
           
                                        }
                                       
                                   
                                   
                                }
                            }
                        }


}
 
Ich glaube das liegt am Format, welches zurück kommt. Hast Du irgendeine Meldung dazu in der Fehlerkonsole?
 
Nein leider gar nicht. Ich habs nun anders gelöst. Habe ne Form um die Dinge gelegt, die ich senden möchte. Dazu einen Button der auf ne Javascript funktion verweist, die form-submit() ausführt. So funktioniert es. Ich denke das Problem ist, dass ich den Response nicht sauber anzeigen kann...Mit nem iFrame habe ich es ehrlich gesagt gar nicht mehr probiert, denke aber dass das auch funktionieren könnte. Oder was noch interessant wäre, den Response über innerHTML in ein div einfügen, vlt gehts dann damit. werde ich mal noch versuchen wenn ich Zeit habe am WE.
Danke allen die sich dem Thema anegnommen haben.
 
Zurück
Oben