Zeilenumbruch bei übergabe erhalten
Michi
- programmiertechnik
Hi Leute
Ich hab folgendes Problem: Ich hab ein Newsscript erstellt...und es ist so weit auch alles fertig...aber ein problem hab ich noch:
Sobald ich den text im Textfeld in die Variable übergebe sind die Zeilenumbrüche WEG.
Hat jemand erfahrungen mit diesem Thema? Bitte um hilfe.
LG Michi
hallo Michi,
versuch mal folgendes:
wrap="physical" als Parameter im entsprechenden Input-Element; Textarea-Element.
Grüße, Andre
hallo Michi,
versuch mal folgendes:
wrap="physical" als Parameter im entsprechenden Input-Element; Textarea-Element.
Funktioniert leider nicht....schade drum
Michi
Hallo Michi.
wrap="physical" als Parameter im entsprechenden Input-Element; Textarea-Element.
Funktioniert leider nicht....schade drum
Es gibt in HTML kein Attribut "wrap" und in CSS keine Eigenschaft "wrap". Also vergiss es, halte dich besser an das, was dir wahsaga empfohlen hat.
Freundschaft!
Siechfred
hi,
Ich hab folgendes Problem: Ich hab ein Newsscript erstellt...und es ist so weit auch alles fertig...aber ein problem hab ich noch:
Sobald ich den text im Textfeld in die Variable übergebe sind die Zeilenumbrüche WEG.
wie hast du das überprüft?
Hat jemand erfahrungen mit diesem Thema?
_jeder_, der ein bisschen erfahrung mit HTML hat, weiß, dass zeilenumbrüche um quellcode keinen umbruch in der anzeige bewirken ...
vermutlich suchst du eine funktion wie nl2br(), sofern du mit PHP arbeitest - oder halt deren pendant in einer anderen sprache.
gruß,
wahsaga
Sobald ich den text im Textfeld in die Variable übergebe sind die Zeilenumbrüche WEG.
wie hast du das überprüft?
echo "$HTTP_POST_VARS[Text]";
_jeder_, der ein bisschen erfahrung mit HTML hat, weiß, dass zeilenumbrüche um quellcode keinen umbruch in der anzeige bewirken ...
danke das ist mir klar.
Ich mache in diesem Textfeld ja auch zeilenumbrüche und diese werden dann auch ganz "normal" ausgegeben wenn du es liest, oder? darum gehts mir. aber vielleicht steh ich auch einfach nur auf der leitung.
LG
Hallo,
Ich mache in diesem Textfeld ja auch zeilenumbrüche und diese werden dann auch ganz "normal" ausgegeben wenn du es liest, oder?
aber erst in <br> umgewandelt. Was wahsage Dir wohl sagen wollte ist: kuck mal in den Quelltext der Datei, die mit "$HTTP_POST_VARS[Text]" ausgegeben wird. Da wirst Du die Zeilenumbrüche vermutlich finden.
Gruß, Andreas
Hi,
Sobald ich den text im Textfeld in die Variable übergebe sind die Zeilenumbrüche WEG.
wie hast du das überprüft?
echo "$HTTP_POST_VARS[Text]";
und auf welche Weise bist Du _danach_ zur Erkenntnis gekommen, dass keine Zeilenumbrüche vorhanden waren(!)?
Ich mache in diesem Textfeld ja auch zeilenumbrüche und diese werden dann auch ganz "normal" ausgegeben wenn du es liest, oder?
Meinst Du in diesem Forum? Schau Dir den Quellcode der Seite an!
Cheatah
Hi
und auf welche Weise bist Du _danach_ zur Erkenntnis gekommen, dass keine Zeilenumbrüche vorhanden waren(!)?
Ich hab den text vorher eingegeben....
LG Michi
Hi,
und auf welche Weise bist Du _danach_ zur Erkenntnis gekommen, dass keine Zeilenumbrüche vorhanden waren(!)?
Ich hab den text vorher eingegeben....
die Integrität der Daten wird nicht bezweifelt, sondern Dein Prüfverfahren.
Cheatah
Hi
vermutlich suchst du eine funktion wie nl2br(), sofern du mit PHP arbeitest
Ja tu ich...aber arbeiten ist vielleicht der falsche ausdruck! eher TESTEN!!
nl2br(), sieht so aus als wär das das richtige aber mit "string nl2br ( string string)" kann ich nicht wirklich etwas anfangen. Das ist mein Problem. Vielleicht kann mir das jemand erläutern oder ein BSP geben. Danke
Michi
Hi,
mit "string nl2br ( string string)" kann ich nicht wirklich etwas anfangen.
das erste "string" ist der Rückgabetyp der Funktion namens "nl2br". In den runden Klammern steht die kommagetrennte Parameterliste, in diesem Fall nur aus einem Parameter bestehend, jeweils mit Typ und Name. Hier wurde der Name identisch zum Typ gewählt, was zwar verwirrend sein mag, aber egal ist.
Cheatah
Hi
das erste "string" ist der Rückgabetyp der Funktion namens "nl2br". In den runden Klammern steht die kommagetrennte Parameterliste,
Tja. Ich glaube ich hätte wohl nur um ein Beispiel bitten sollen, denn hiermit kann ich genauso wenig anfangen. Ich hab nun 10 für mich möglich erscheinende schreibweisen probiert...ohne erfolg.
Vielleicht erbahmt sich ja doch noch jemand.
LG Michi
Ergänzung:
Ich habe auch
function br2nl( $data ) {
return preg_replace( '!<br.*>!iU', "\n", $data );
}
versucht. Kann es sein das es auch noch an etwas anderem liegen kann...nämlich dass vom textfeld selbst keine zeilenumbrüche weitergegeben werden?!
Michi
Hallo,
function br2nl( $data ) {
return preg_replace( '!<br.*>!iU', "\n", $data );
}
versucht. Kann es sein das es auch noch an etwas anderem liegen kann
was soll jetzt diese Umkehrung?
echo nl2br($data);
Gruß, Andreas
Hallo Michi.
Ich hab nun 10 für mich möglich erscheinende schreibweisen probiert...ohne erfolg.
Was ist an $neuer_string = nl2br($alter_string); nicht zu verstehen? Wie sehen denn deine erfolglosen Versuche aus?
Freundschaft!
Siechfred
Was ist an $neuer_string = nl2br($alter_string); nicht zu verstehen?
Na endlich...genau das hat mir geholfen. Herzlichen Dank!!!!! Ich habs einfach noch mit der ausführung noch nicht so. Ich hab zwar das vorherige Posting grundsätzlich verstanden aber. Wie die genaue Schreibweise aussieht kann ich mir nur reimen.
Danke nochmal
Gute Nacht
Michi
Hi,
Tja. Ich glaube ich hätte wohl nur um ein Beispiel bitten sollen,
dann hättest Du das Gleiche bekommen, denn eine Funktionssignatur lesen zu können ist unerlässlich.
denn hiermit kann ich genauso wenig anfangen.
Warum nicht?
Ich hab nun 10 für mich möglich erscheinende schreibweisen probiert...ohne erfolg.
Welche zum Beispiel?
Ich habe auch
function br2nl( $data ) {
return preg_replace( '!<br.*>!iU', "\n", $data );
}
versucht.
Du sollst keine Funktion namens br2nl _schreiben_, sondern die bereits existierende Funktion nl2br _verwenden_.
Cheatah
Hi,
_jeder_, der ein bisschen erfahrung mit HTML hat, weiß, dass zeilenumbrüche um quellcode keinen umbruch in der anzeige bewirken ...
Jeder, der sich mit HTML einigermaßen auskennt, weiß, daß Zeilenumbrüche im Quellcode durchaus Zeilenumbrüche in der Anzeige bewirken können.
Beispiele: pre, textarea, Elemente mit white-space:pre
cu,
Andreas
hi,
Jeder, der sich mit HTML einigermaßen auskennt, weiß, daß Zeilenumbrüche im Quellcode durchaus Zeilenumbrüche in der Anzeige bewirken können.
Beispiele: pre, textarea, Elemente mit white-space:pre
werd' nicht spitzfindig ;-)
ja, auf diese sonderfälle habe ich nicht explizit hingewiesen, weil m.E. aus der fragestellung schon deutlich herauszulesen war, wo hier das problem des fragers lag.
gruß,
wahsaga
Hi,
werd' nicht spitzfindig ;-)
Kann ich gar nicht werden ;-)
cu,
Andreas
Hello,
netter[tm] Thread.
Die nächsten Probleme wirst Du wohl bekommen, wenn Du die Daten abspeichern willst. Wie machst Du das denn? Nur mal so aus Neugierde gefragt. ;-)
Harzliche Grüße aus http://www.annerschbarrich.de
Tom
Die nächsten Probleme wirst Du wohl bekommen, wenn Du die Daten abspeichern willst.
Das bezweifle ich da das schon vorher erledigt war.
Wie machst Du das denn? Nur mal so aus Neugierde gefragt. ;-)
$text = $HTTP_POST_VARS["Text"];
$eintrag = "INSERT INTO news (text) VALUES ( '$text'')";
$eintragen = mysql_query($eintrag);
Lg Michi
Hello,
Die nächsten Probleme wirst Du wohl bekommen, wenn Du die Daten abspeichern willst.
Das bezweifle ich da das schon vorher erledigt war.
Und da sind sie schon, die Probleme... Du siehst sie nur noch nicht *g*
Wie machst Du das denn? Nur mal so aus Neugierde gefragt. ;-)
$text = $HTTP_POST_VARS["Text"];
Die $HTTP_*_VARS sind übraltert und wenn das PHP neuer ist, als 4.3.2, dann sollte man auf
jeden Fall schon mal $_POST['Text'] benutzen.
$eintrag = "INSERT INTO news (text) VALUES ( '$text'')";
Der Eintrag wurde nicht auch SQL-Injection gepüft und auch nicht ordnungsgemäß escaped
Die von PHP meistens automatisch hinzugefügten Backslashes zur Maskierung einiger
Sonderzeichn muss man wieder entfernen (--> magic_quotes_gpc) und dann den String
VOR der Übergabe an die Textschnittstelle der Datenbank mit der für die DB passenden
Funktion ( Bei MySQL mysql_(real_)escape_string() ) behandeln. Dann werden auch die
Umbrüche richtig maskiert und ordentlich abgespeichert.
$eintragen = mysql_query($eintrag);
Na, hier ist es dann ggf. zu spät
Harzliche Grüße aus http://www.annerschbarrich.de
Tom