Zeilenumbruch in Textareas
lepper
- html
0 lepper0 Mathias Brodala0 lepper0 Cheatah0 lepper0 Der Martin0 lepper
0 Mathias Brodala
Hi,
angenommen ich schreib das in eine Textarea hinein:
Hallo, das ist (1)
ein Test.
Bei der (1) mach ich nen Zeilenumbruch.
Das ganze Send ich ab, und dann kommt das bei mir per E-Mail an ... aber ohne Zeilenumbruch.
Kurz:
Wenn man eine Nachicht schreibt kommt bei mir alles in einer Zeile an.
Wie kann ich das ändern?
Danke im Voraus.
Ich hatte Vergessen, dass ich die Opera Version 9.01 hab ...
vieleicht hilft das weiter.
Hallo lepper.
angenommen ich schreib das in eine Textarea hinein:
Hallo, das ist (1)
ein Test.Bei der (1) mach ich nen Zeilenumbruch.
Das ganze Send ich ab, und dann kommt das bei mir per E-Mail an ... aber ohne Zeilenumbruch.
Wie nimmst du die Daten entgegen und womit versendest du sie als Mail?
Einen schönen Mittwoch noch.
Gruß, Mathias
ich habe in einem Script diese Zeilen:
<form action="mailto:MeineEMailAdresse@dieichnet.sag">
Da steht dann das ihr name und Emailadresse Zeug und dann die Zeile:
<textarea type="text" name="nachricht" rows="10" cols="50">
</textarea>
</form>
Wenn ICH SELBST von diesem Formular eine E-Mail zu mir selbst scheibe, die mehr als eine Zeile einnimmt (also mehrzeilig ist), so kommt diese als einzeilige bei mir an.
Also steht da nich das:
Hallo
Hallo
Hallo
Hallo
Sondern das:
Hallo Hallo Hallo Hallo
Info: Ich hab Opera Version 9.01.
Danke im Voraus.
Hi,
ich habe in einem Script diese Zeilen:
<form action="mailto:MeineEMailAdresse@dieichnet.sag">
das ist kein Script, sondern schlichtes HTML. Und wenn Du ein mailto-Formular einsetzt, kannst Du froh sein _überhaupt_ eine Mail zu bekommen - noch dazu mit dem Inhalt des Formulars.
Wenn ICH SELBST von diesem Formular eine E-Mail zu mir selbst scheibe, die mehr als eine Zeile einnimmt (also mehrzeilig ist), so kommt diese als einzeilige bei mir an.
Wenn meine Mutter von diesem Formular aus eine E-Mail an Dich schreibt, erschrickt sie ein plötzlich aufpoppender Installations-Dialog für einen Mail-Client, den sie auf ihrem System nämlich nicht hat. Verwende einen serverseitigen Formmailer.
Cheatah
Hi,
naja... eigentlich wollte ich die Originalscripts meiner neuen Site nit zeigen.. aber ihr zwingt mich ja förmlich.
Also eigentlich ist das auch kein Formular, bei dem man mir eine E-Mail schreiben kann, sondern, was in den Adminbereich kommt. Von da aus werden dann jeden Tag die News erneuert (einige der Admins kennen sich nicht mit php/html aus.. die können nicht jeden Tag im Quelltext rumwühlen, um die News zu erneuern.).
Der Script mit den Formularen sieht so aus:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>
..:Meine Seite mit PHP:..
</title>
</head>
<body>
<p>
<form action="news.php">
<fieldset>
<legend>Newsartikel</legend>
<br>
<fieldset>
<legend>Titel</legend>
<table>
<tr>
<td>
<u><b>Plichtfeld</b></u>
</td>
<td>
<input type="text" name="titel" size="30" maxlength="40">
</td>
</tr>
</table>
</fieldset>
<br>
<fieldset>
<legend>Untertitel</legend>
<table>
<tr>
<td>
<u><b><font color="#FF0000">KEIN</font> Plichtfeld</b></u>
</td>
<td>
<input type="text" name="utitel" size="40" maxlength="80">
</td>
</tr>
</table>
</fieldset>
<br>
<fieldset>
<legend>Inhalt</legend>
<table>
<tr>
<td>
<u><b>Plichtfeld</b></u>
</td>
<td>
<textarea type="text" name="inhalt" rows="10" cols="50" wrap="physical"></textarea>
</td>
</tr>
</table>
</fieldset>
<br><br>
<input type="submit" value="Abschicken">
<br><br>
<input type="reset" value="Abbrechen">
</fieldset>
</form>
</p>
</body>
</html>
Und der news.php so:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>News</title>
</head>
<body>
<?php
$titel=$_REQUEST['titel'];
$utitel=$_REQUEST['utitel'];
$inhalt=$_REQUEST['inhalt'];
echo "<div align="center"><font size="+2"><u>
<b>$titel</b></u></font></div><br>\n
<font size="+1"><div align="center"><b>$utitel</b>
</div><br>\n$inhalt</font>";
?>
</body>
</html>
Mein Problem ist nun:
Wenn man bei der textarea
Hallo
Hallo
Hallo
Hallo
Hallo
Hallo
Hallo
eingibt,
koommt
Hallo Hallo Hallo Hallo Hallo Hallo Hallo
in news.php raus.
Wie kann ich also machen, dass der Zeilenumbruch "anerkannt" wird?
Danke im Voraus.
Hallo,
naja... eigentlich wollte ich die Originalscripts meiner neuen Site nit zeigen.. aber ihr zwingt mich ja förmlich.
aber doch nicht alles, sondern nur das, was mit dem Problem zu tun hat ...
Der Script mit den Formularen sieht so aus:
Hm, ich kann mich irren - aber für mich heißt es immer noch DAS Script.
[viel überflüssiger Code]
<textarea type="text" name="inhalt" rows="10" cols="50" wrap="physical"></textarea>
Das ist schonmal entscheidend: Kein versteckter Inhalt, keine Leerzeichen oder Zeilenumbrüche. Übrigens hat textarea kein type-Attribut wie die anderen input-Elemente, da sich der Typ schon aus dem Elementnamen ergibt.
[noch mehr überflüssiger Code]
Und der news.php so:$inhalt=$_REQUEST['inhalt'];
[...]
echo "<div align="center"><font size="+2"><u>
<b>$titel</b></u></font></div><br>\n
<font size="+1"><div align="center"><b>$utitel</b>
</div><br>\n$inhalt</font>";
Dein eingegebener Text wird also genau so, wie er in der textarea eingegeben wurde, auch weiterverarbeitet, in diesem Fall einfach mit einem echo wieder ausgegeben.
Wenn man bei der textarea
Hallo
Hallo
Hallo
Hallo
Hallo
Hallo
Halloeingibt,
koommtHallo Hallo Hallo Hallo Hallo Hallo Hallo
in news.php raus.
Natürlich. Schau dir mal den Quelltext im Browser an: Was steht hinter deinem div-Element als Wert von $inhalt? Wie werden Zeilenumbrüche im Quelltext von HTML interpretiert? Na also.
Wie kann ich also machen, dass der Zeilenumbruch "anerkannt" wird?
Du suchst die Funktion nl2br().
Ciao,
Martin
Vielen Dank...
eigentlich hätt ich selbst drauf kommen können.
MfG Lepper
(WehR rechdschreipe vehler vinted soll sie behalden.)
Hallo lepper.
ich habe in einem Script diese Zeilen:
<form action="mailto:MeineEMailAdresse@dieichnet.sag">
Tja, dass hiermit alles wie gewünscht funktioniert, kannst du nicht erwarten. Du kannst nicht einmal erwarten, dass diese Methode überhaupt funktioniert, da weder ein Mailclient installiert noch ein Standardprogramm für mailto:-Links eingerichtet worden sein muss.
Nutze besser einen Formmailer unter Nutzung einer serverseitigen Technik wie Perl, PHP, Python, etc. In SELFHTML werden hierzu Beispiele in PHP und Perl gegeben.
Bei Fragen zur Spam-Absicherung ist das hiesige Archiv sehr auskunftsfreudig.
Info: Ich hab Opera Version 9.01.
Oben genanntes hat mit dem verwendeten Browser nichts zu tun.
Einen schönen Mittwoch noch.
Gruß, Mathias