Zum Inhalt springen

Automatischen Zeilenumbruch beu textarea erzwingen?


pascal87

Empfohlene Beiträge

N'Abend!

Für meine Homepage habe ich mir ein Gästebuch gebastelt, im oberen Bereich der Seite gibt es eine <textarea>, wo man einen Kommentar eingeben kann, nach betätigen eines Buttons wird der Inhalt unter den Textfeldern ausgegeben.

Nun habe ich folgendes Problem:

Wenn man über den über cols="x" Bereich hinaus in das Textseld schreibt gibt es natürlich diese automatischen Scrollbalken und in der Ausgabe wird der Text natürlich als eine lange Zeile ausgegeben. Dieses Verhalten zerstört mir logischerweise das Layout, deshalb habe ich mich als Notlösung für einen Frame entschieden.

Jetzt möchte ich erreichen, dass man in das Textfeld Zeilen eingeben kann, die egal wie lang sind und diese in der Ausgabe bei einer bestimmten Länge automatisch umgebrochen werden, damit sich alles in einem vorher definierten Bereich abspielt und man nicht horizontal scrollen kann/muss.

Code:

<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">

Kommentar:

<br>

<textarea cols="55" rows="4" name="comment"></textarea><br>

Name:<br>

<input type="text" name="name"><br>

E-Mail-Adresse:<br>

<input type="text" name="email">

<p></p>

<input type="submit" value="posten">

</form>

<?php

// Dateiname in Variable speichern

$datei = "comment.txt";

// Variable Kommentar gesetzt? Name nicht leer? hier vieleicht noch emailadressenbedingungen

if (isset($_POST['comment']) && $_POST['name'] != "") {

$comment = $_POST['comment'];

$name = $_POST['name'];

$email = $_POST['email'];

// Datei wird zum Schreiben-Lesen geöffnet

$zeiger = fopen($datei, "r+");

// alte Daten herauslesen und in $alt sichern

$alt = fread($zeiger, filesize($datei));

// E-Mail-Link entsteht

$email = "<a href=\"mailto:$email\">$email</a>";

// Datum checken und formatieren

$datum = date("j.n.Y");

// HTML-Zeichen maskieren, Slashes entfernen, Zeilenumbrüche erhalten

$comment = htmlspecialchars($comment);

$comment = stripslashes(nl2br($comment));

// Comment bauen

$meinung="<p><b>$name</b> E-Mail: $email schrieb am <i>$datum</i>:<br>$comment</p>\n";

// Cursor in Startposition

rewind($zeiger);

// neuer Comment vor alten:

fputs($zeiger, "$meinung \n $alt");

// Datei schließen

fclose($zeiger);

}

// Datei anzeigen

readfile($datei);

?>

Ich freue mich über jeden Lösungshinweis...

Vielen Dank!

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...