Ergebnis 1 bis 6 von 6

Thema: PHP Guestbook - Absätze erkennen?

  1. #1

    PHP Guestbook - Absätze erkennen?

    also langsam werd ich in dem forum stammgast

    mein heutiges problem ist eigentlich recht simpel. ich möchte, dass wenn jemand in mein guestbook sich einträgt, und er dabei die "enter"-taste drückte um einen zeilenumbruch zu machen, dieser von meinem GB erkannt wird und als "<br>" tag in meiner textdatei gespeichert wird.

    zur erklärung:
    die person die sich verewigen möchte gibt auf meiner site in mehrere textfelder ein paar sachen an (email, HP, name, etc..), auch den kommentar den er hinterlassen möchte. wenn jemand jetzt also in dieses textfeld folgendes eingibt:

    "hallo!
    Tolle site,
    gefällt mir gut.

    LG, xxx"

    dann wird letztlich auf meiner site so angezeigt:

    "hallo!Tolle site,gefällt mir gut.LG,xxx"

    ergo: es werden die zeilenwechsel nicht erkannt. wie kann das meinem script klarmachen dass es sich bei einem zeilenwechsel um einen "<br>" tag handelt?

    thanks,
    [JLA]

  2. #2
    Die wohl einfachste Methode wäre, den Teil, in den die Datei eingefügt wird mit CSS als "whitespace: pre;" auszuzeichnen, dann werden Zeilenumbrüche automatisch übernommen.

    Erklärung

  3. #3
    Oder benutz in PHP nl2br($dein_text), bevor du den ausgibst. Das ersetzt alle Zeilenumbrüche durch <br />

  4. #4
    also die css variante fällt schon mal flach, mehr aus dem grund dass ich keine ahnung von css hab, als dass es nicht unterstützt wird

    zu der 2ten variante. wo genau soll ich den befehl einfügen? an der stelle wo es eingelesen wird, oder wo es ausgegeben wird? zur info, hier ist mein script:

    Code:
    <?php
    $name = $_POST['input_name'];
    $email = $_POST['input_email'];
    $homepage = $_POST['input_website'];
    $kommentar = $_POST['input_comment'];
    
    //Abfrage, ob Textarea Name leer ist und Ausgabe einer Warnung
    if (empty ($name)) {  
        die ("<b><font face=\"Arial, Verdena, sans-serif\" size=\"2\" color=black>Bitte geben Sie Ihren Namen ein.<br><br><a href=\"javascript:history.go(-1);\">&laquo;&laquo; zurück</A>");}
    
    //Abfrage, ob Textarea Komentar leer ist und Ausgabe einer Warnung
    if (empty ($kommentar)) {  
        die ("<b><font face=\"Arial, Verdena, sans-serif\" size=\"2\" color=black>Bitte geben Sie einen Kommentar ein.<br><br><a href=\"javascript:history.go(-1);\">&laquo;&laquo; zurück</A>");}
    
    $txt = "nachrichten.txt";
    
    if($homepage != "http://")
    {$homepage1 = "<a href=\"$homepage\" target=\"_blank\">[Homepage]</a>";}
    
    if($email != "")
    {$email1 = "<a href=\"mailto:$email\">[E-Mail]</a>";}
    
    $lesen = fopen("$txt", "r");
    $inhalt = fread($lesen, filesize($txt));
    fclose ($lesen);
    
    
    //Schreiben in die TXT-Datei
    $schreiben = fopen("$txt", "w");
    if($schreiben){
    flock($schreiben,2);
    fputs ($schreiben, "     
    <b>Geschrieben von $name</b>
    <b>$homepage1</b>
    <b>$email1</b><hr />
    $kommentar<hr />
    <br><br>
    $inhalt");
    flock($schreiben,3);
    fclose ($schreiben);}
    echo "<script>self.location=\"guestbook.php\";</script>";
    ?>

  5. #5
    Ist eigentlich unwichtig, ob du die Funktion beim Schreiben oder beim Auslesen anwendest. Ich würde es beim Auslesen machen, aber du hast ja nur das Skript zum Schreiben gepostet. Man könnte es zum Beispiel am Anfang einbauen:
    Code:
    $kommentar = nl2br($_POST['input_comment']);
    freundliche Grüße, Rolus

  6. #6
    ein hoch auf den RPG-Kingdom. mal wieder alles in ordnung

    thanks@all

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •