|
|||
Seiteninhalt mit PHP nachladen
Hallo,
ich habe ein Problem und bin nicht ganz sicher wie man das löst. Ich habe hier eine Seite, welche 3 spaltig ist. Links befindet sich das Menü, in der Mitte der Inhalt und Rechts die Hilfe. Normal lasse ich nur den Inhalt dynamisch nachladen und nutze dafür Ajax. Nun ist es so, das in der Mitte ein Formular steht. Nennen wir die Seite formular.xhtml. Hier werden Daten eingegeben in per Submit Button wird die Seite data.php aufgerufen, die diese verarbeitet und in eine Datenbank schreibt und daraus neue Daten holt. Diese sollen nun auf einer folgenden Seite angezeigt werden. Problem ist nur, das der Button ja die Seite data.php aufruft, die ja eigentlich keinen Inhalt hat. Eigentlich sollte aber nur die mittlere Spalte neu geladen werden und die Menüleiste und die Hilfeleiste erhalten bleiben. Wie geht man hierbei am besten vor? Viele Grüße, Parallax |
Sponsored Links |
|
||||
Du könntest / solltest einen Ansynchronen Request vom Formular aus an die data.php schicken, dort die Daten auswerten, die eMail verschicken und eine Erfolgsmeldung ausgeben. Oder halt die Fehlermeldung zurückgeben.
__________________
Hier ein immer gültiges Statement: Überarbeite deine Code, lerne die Grundlagen, widersprich mir nicht, wehre dich nicht, ich habe Recht, wir sind Lolgion, wir sind viele.. potato... All meine Angaben sind ohne Gewähr, es könnte also trotz meiner Unfehlbarkeit dazu kommen dass ich falsch liege www.richard-thiel.de | Müssen Websiten überall gleich ausschauen? |
Sponsored Links |
|
|||
Ich habe noch eine Frage zu AJAX...
und zwar, wenn ich mit der POST Methode Daten an ein PHP Skript versenden will, gehe ich wie folgt vor. reqObj.open("POST", "phpfile.php", true); reqObj.setRequestHeader("name","value"); reqObj.send("..."); die erste Zeile is klar, bei der zweiten habe ich Schwierigkeiten. Dort heißt es im Netz immer man muss hier einen Headernamen und einen Wert dazu eingeben. Für was sind diese Angaben und welche Werte sind gültig und was tuen die? Die dritte Zeile ist eigentlich auch klar, hier kann ich nun Daten verschicken mit var1 = 5 usw usw... was ist aber wenn ich keinen festen Wert sondern den Wert einer Variable verschicken möchte. kann ich da einfach hinschreiben var1=varInput1, für den Fall das varInput1 eine JS Variable ist? Grüße, Parallax |
|
||||
Sehr unspezifisch die Fragen.
Die erste Frage findest du auf Wikipedia https://de.wikipedia.org/wiki/Liste_...P-Headerfelder Die zweite ist etwas ausfühlircher aber wird in jeder Doku auch erklärt https://developer.mozilla.org/en-US/...est#send%28%29 Du musst aber darauf achten, dass Parameter die du sendest auch richtig kodiert werden, damit auch Sonderzeichen auf dem Server richtig ankommen. Dein Beispiel zeigt übrigens ein synchronen Aufruf, ist also kein AJAX. Diese vorgehensweise solltest du dir überlegen, denn es kann den Browser blockieren, wenn z.b. der Server down ist. |
|
|||
Ok, passt... Das funktioniert jetzt so weit, danke...
ein Problem ist jedoch aufgetaucht bei reqObj.send("email="+varemail); wird brav der Inhalt der Variable varemail übertragen und im PHP Skript mit $_POST['email'] wieder ausgelesen. nun möchte ich aber mehrere Daten übertragen, wie funktionert das? ich habe es mit reqObj.send("email="+varemail&"name="+varname); probiert, aber das geht nicht... EDIT: Ok, schande über mein Haupt... hab das zweite + vergessen.... die Zeile lautet jetzt reqObj.send("email="+varemail+"&name="+varname); und schon gehts.... danke nochmal Geändert von Parallax (10.09.2015 um 14:01 Uhr) |
|
|||
Ich hatte noch eine weitere Frage dazu....
Im Moment habe ich ein Formular, in welches ich Daten eingebe, diese werden dann von JS erfasst und per XMLHTTPRequest an ein PHP Skript gesendet... Nun können Rückmeldungen auftreten, wie zum Beispiel eine fehlerhafte Formulareingabe.... Dazu nehme ich in JS wieder den ResponseText und gebe diesen in einem DIV mit .innerHTML aus..... Soweit so gut... Wenn alle Daten korrekt sind, möchte ich auf eine andere Seite weiterleiten.... Dazu gebe ich einen ResponseText zurück der ungefähr so lautet könnte.. ("input_user_correct")... Wenn dieser ResponseText von einer If abfrage detektiert wird, hole ich mir mit einem weiteren XMLHTTPRequest eine neue Seite und zeige diese im body an... Nun meine Frage: kann ich auch gleich in PHP auf eine andere Seite verlinken, ohne den Umweg über JS gehen zu müssen.... Grüße, Parallax |
|
||||
Zitat:
Aber warum holst du die neue Seite per AJAX, wenn du lieber weiterleiten möchtest? |
Sponsored Links |
|
|||
Ich habe 3 Spalten auf der Seite, welche unterschiedliche Informationen und Eingaben beinhalten... Bei der Eingabe möchte ich nur die mittlere Spalte neu laden, die anderen beiden bleiben so wie sie sind...
Der ResponseText enthält dann die Fehlermeldungen von PHP... wenn alles ok ist hol ich in die nächste seite mit AJAX in die mittlere spalte... soweit funktioniert das alles super... nur am ende der eingaben nach x seiten möchte ich auf eine komplett andere Seite umleiten... Und das am besten von PHP aus... |
Sponsored Links |
Themen-Optionen | |
Ansicht | |
|
|
Ähnliche Themen | ||||
Thema | Autor | Forum | Antworten | Letzter Beitrag |
xampp und PHP 5.6 | laborix | Serveradministration und serverseitige Scripte | 2 | 01.12.2014 09:46 |
Content nachladen statt mit PHP | kochi_rulez | Javascript & Ajax | 3 | 10.11.2008 20:14 |
Dateien auslagern - Include und PHP | ArcVieh | Serveradministration und serverseitige Scripte | 17 | 27.03.2008 19:09 |
Browserkonflikt | Spyder | CSS | 6 | 24.09.2007 14:07 |
Positionierung eines Kastens... | Spyder | CSS | 11 | 18.09.2007 19:59 |