| Autor |
Nachricht |
cRime
Threadersteller
Dabei seit: 07.05.2006
Ort: Osnabrück
Alter: 24
Geschlecht:
|
Verfasst Sa 05.07.2008 18:33
Titel Text-Formatierung mittels 'ajaxRequest.open' beibehalten |
 |
|
Ich habe folgendes Problem:
Ich schreibe in eine Datenbank mittels AJAX und PHP.
Soweit läuft alles, nur sobald ich mittels ajaxRequest.open die Daten an die PHP Datei sende, empfängt diese nur einen ganzen String (ohne <br> etc.)
ich habe mit nl2br() versucht die Daten wieder HTML-Fähig zu machen, nur leider kam ich zum Ergebnis dass die PHP Datei den Text garnicht erst formatiert bekommt.
| Code: | var queryString = "?news_header=" + header + "&news_subtitle=" + subtitle + "&news_text=" + text + "&news_image=" + image;
alert (text);
try {
ajaxRequest.open("GET", "../php/new_news.php" + queryString, true);
alert("Daten wurden eingetragen!");
} catch (e) {
alert("Daten konnten nicht eingetragen werden!");
}
ajaxRequest.send(null); |
Auszug aus der PHP Datei die die Datenbank Einträge macht (erfolgreich!)
| Code: | | $text = nl2br($_GET['news_text']); |
Hier bekomme ich bei beiden Variablen nur einen ganzen String, ohne Umbruch etc.
Also muss die Ajax-Sende-Methode den formatierten String zerstören.
Wie bekomme ich nun den String formatiert in die PHP Datei?
|
|
| |
|
 |
Zeithase
Dabei seit: 09.05.2005
Ort: Arnstadt
Alter: 23
Geschlecht:
|
Verfasst Sa 05.07.2008 18:51
Titel
|
 |
|
Verwende POST. Immer. Nicht nur aus praktischen Gruenden (dann hast Du dieses Problem bei textarea-Objekten nicht), sondern auch, um Caching-Bugs des IEs entgegenzutreten.
// Addon: zumal ist es bei nativem Ajax ebenfalls besser, den Request-Header zu uebergeben. Beispiel:
| Code: | function sndReq() {
var sendstring = document.getElementById('testfeld').value;
ajaxRequest.open('post', 'test.php');
ajaxRequest.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
ajaxRequest.onreadystatechange = handleResponse;
ajaxRequest.send('testfeld='+sendstring);
} |
Zuletzt bearbeitet von Zeithase am Sa 05.07.2008 18:57, insgesamt 2-mal bearbeitet
|
|
| |
|
 |
cRime
Threadersteller
Dabei seit: 07.05.2006
Ort: Osnabrück
Alter: 24
Geschlecht:
|
Verfasst Sa 05.07.2008 20:04
Titel
|
 |
|
habs auch schon mit post versucht.
leider ohne erfolg.
ich werde mal den tip mit dem request versuchen.
den hatte ich nämlich drin, und wieder rausgenommen...
|
|
| |
|
 |
Zeithase
Dabei seit: 09.05.2005
Ort: Arnstadt
Alter: 23
Geschlecht:
|
Verfasst Sa 05.07.2008 20:08
Titel
|
 |
|
Quick, dirty and ugly: ein Beispiel fuer Dich. Die crime-test.php sieht folgendermaßen aus:
| Code: | | echo nl2br($_POST["testfeld"]); |
|
|
| |
|
 |
cRime
Threadersteller
Dabei seit: 07.05.2006
Ort: Osnabrück
Alter: 24
Geschlecht:
|
Verfasst Sa 05.07.2008 20:43
Titel
|
 |
|
danke, aber macht es einen großartigen unterschied wenn ich die php dafür aufrufe, um in die datenbank zu schreiben, du aber um eine antwort zu erhalten?
du bekommst ja den text zurückgeliefert.
mir ist es eigentlich unwichtig ob ich den text wieder zurück bekomme.
hauptsache es steht in der datenbank.
prüfen kann ich ja auch anders... ich werde mich mal mit deinem quelltext auseinander setzen.
|
|
| |
|
 |
Zeithase
Dabei seit: 09.05.2005
Ort: Arnstadt
Alter: 23
Geschlecht:
|
Verfasst Sa 05.07.2008 20:44
Titel
|
 |
|
| cRime hat geschrieben: | danke, aber macht es einen großartigen unterschied wenn ich die php dafür aufrufe, um in die datenbank zu schreiben, du aber um eine antwort zu erhalten?
du bekommst ja den text zurückgeliefert. |
Na, ob Du den Text nun echo'en laesst oder in eine Datenbank pappst - das Text bleibt, inklusive der <br/>-Elemente gleich.
|
|
| |
|
 |
cRime
Threadersteller
Dabei seit: 07.05.2006
Ort: Osnabrück
Alter: 24
Geschlecht:
|
Verfasst Sa 05.07.2008 21:26
Titel
|
 |
|
danke, habs jetzt hinbekommen.
allerdings scheint es so dass ich einiges noch nicht ganz verstanden habe.
also mit open wird ja ganz normal die datei geöffnet.
mit send dann die parameter übergeben.
doch inwiefern ist das onreadystatechange wichtig?
ich hab es zwar drin, als prüfer, aber muss das sein wenn ich eh nichts erwarte?
dann dürfte man ja bei dir die komplette handleResponse funktion eigentlich raus lassen, oder?
Zuletzt bearbeitet von cRime am Sa 05.07.2008 21:27, insgesamt 1-mal bearbeitet
|
|
| |
|
 |
| |
|
 |
| Ähnliche Themen |
[Erledigt] [Flash + AS2 + PHP] Text und Bild formatierung
Ajaxrequest funktioniert nicht.
[javascript] mootools ajaxrequest charset
Scrollbalken-Position bei Navigation beibehalten
Google Platzierung beibehalten - Seite überarbeiten
Fläche einfärben und dabei Helligkeitswerte beibehalten
|
 |