Hi,
ich zerbreche mir hier den Kopf über ein Problem, was eigentlich sehr einfach seien sollte.
es *ist* einfach, wenn man es nicht künstlich verkompliziert.
Kurz umrissen, ich habe eine Textarea, deren Inhalt in in meiner Datenbank speichre.
Okay, schau'mer mal.
$beschreibung=$\_POST["element\_2"]; //$beschreibung= strip\_tags($beschreibung); //$beschreibung= htmlspecialchars($beschreibung); $beschreibung= nl2br($beschreibung); $beschreibung=str\_replace("\r\n","",$beschreibung);
Wozu hier nl2br()? Willst du <br>-Tags in die Datenbank schreiben? Nein, das willst du eigentlich nicht! Speichere die Daten möglichst neutral. Behalte die Zeilenumbrüche bei, wie du sie auch schon angeliefert bekommst. Gut dass du strip_tags() und htmlspecialchars() wenigstens wieder rausgenommen hast.
Allerdings solltest du die Daten vor dem Eintragen unbedingt nach den Regeln deiner Datenbank maskieren. Bei mySQL wäre beispielsweise mysql_real_escape_string() dafür vorgesehen und geeignet.
Ausgeben tue ich den Text per Javascript:
tmp2.innerHTML = "<h2>"+markdetails[i].name+"</h2><br>Datum: "+datum[2]+"."+datum[1]+"."+datum[0]+"<br><p>"+markdetails[i].beschreibung+"<br>Veranstaltungsort: "+markdetails[i].adresse+"<br>Link zum Veranstalter: "+markdetails[i].url+"</p><br>Eingetragen von "+markdetails[i].von;
Und wie kommen die Daten von der DB bis zum Javascript?
Hier ein Beispiel:
Ausgabe im Browser:
Ja, die <br>-Tags, mit denen du den Text beim Eintragen verstümmelt hast, werden also exakt 1:1 wieder ausgegeben.
Inhalt im entsprechenden Feld in der Datenbank:
1<br />23<br />5<br />3<br />52<br />241
Genau - da sind sie ja auch schon.
Mir ist noch nicht klar, wie deine Daten von der DB wieder bis zum Browser kommen. Aber beim Eintragen machst du schon mal einen Kardinalfehler.
So long,
Martin
Soziologen sind nützlich, aber keiner will sie haben.
Bei Informatikern ist es gerade umgekehrt.
Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(