Antworten auf deine Fragen:
Neues Thema erstellen

Zeilenumbruch?

Muskelbiber

Der Muskelmann

Hallo!

ich habe zur Abwechslung mal ein Problem ;D

Und zwar....
Habe ich ein Gästebuch geschrieben.
Das läuft auch super!
Nur:
Wenn jemand einen Text schreib und öffters mal Enter benutzt wird der Text in die Datenbank übertragen.
Wenn ich den Text aber wieder Auslesen lasse werden diese Umbrüche nicht mit übernommen!

Frage an euch

Wie mach ich das ;D

mfg

PHP:
<?php
function anzeigen()
{
        $linkID = mysql_connect("localhost","***","***");
        if (!$linkID) echo "Verbindung nicht aufgebaut!<br />";

        $select = mysql_select_db("28999_1");
        if (!$select) echo "Datenbankwurde nicht ausgewählt!<br /><br />";
        
        $sql = "SELECT * FROM gb_eintrag ORDER BY id DESC;";
        $result = mysql_query($sql);
        if (!$result) echo "Select-Befehl konnte nicht ausgeführt werden! <br />";
        
        while ($zeile = mysql_fetch_array($result))
        {
            echo "  <strong>Eintrag $zeile[id]</strong>
                    <div align=\"right\">
                    Datum: $zeile[datum]<br /> 
                    Zeit: $zeile[zeit] <br />
                    </div>
                    Name: $zeile[name]<br /> 
                    Email: <a href=\"mailto:$zeile[email]\">$zeile[email]</a> <br /> 
                    Homepage: <a href=\"$zeile[homepage]\">$zeile[homepage]</a><br /> 
                    Wohnort: $zeile[ort]<br /> 
                    Nachricht: <br /> $zeile[nachricht]<br /><hr />";
        }
        
        mysql_close();
}

if (isset($_POST['button']))
        
    {
        $linkID = mysql_connect("localhost","***","***");
        if (!$linkID) echo "Verbindung nicht aufgebaut!<br />";
        
        $select = mysql_select_db("28999_1");
        if (!$select) echo "Datenbankwurde nicht ausgewählt!<br /><br />";
        
        
        $datum = date("d.m.y");
        $zeit = date("H:i:s");
        $ip = $_SERVER['SERVER_ADDR'];  
        
        $sql = "INSERT INTO `28999_1`.`gb_eintrag` (`name`, `email`, `homepage`, `ort`, `nachricht`, `datum`, 
        `zeit`, `ip`) VALUES ('$_POST[name]','$_POST[email]','$_POST[homepage]','$_POST[ort]','$_POST[nachricht]','$datum','$zeit','$ip');";
        
        
        $result = mysql_query($sql);
        if ($result) echo "Eintrag für ".$_POST[name]." erfolgt!<br />";
        
        mysql_close();
    }    

anzeigen ();

?>

Freiwillige Feuerwehr Niederschelderhtte
 

Duddle

Posting-Frequenz: 14µHz

AW: Zeilenumbruch?

Übernommen werden die schon, du musst einfach mal in den generierten HTML-Quelltext schauen. Das Problem ist, das HTML (bzw. eigentlich der Browser selbst) überschüssig viele Leerzeichen, Zeilenumbrüche usw. kürzt. Deshalb musst du explizit sagen, dass du beispielsweise ein extra Leerzeichen haben willst (&nbsp;) oder eben einen Zeilenumbruch (<br />).

Deshalb musst du jeden Zeilenumbruch im gespeicherten Text bei der Ausgabe in ein <br /> umwandeln. Und genau dafür gibt es diese schöne Funktion: PHP: nl2br - Manual


Duddle
 

Muskelbiber

Der Muskelmann

AW: Zeilenumbruch?

Muss ich quasi nur Folgendes Einbauen?!
PHP:
function br2nl($string)
{
    return preg_replace('/\<br(\s*)?\/?\>/i', "\n", $string);
}
Wenn ja.... Es Funktioniert leider nicht

Kann mir jemand die Funktion anhand eines Funktionierenden Scripts erklären?!
 

Chriss1987

me.drinkCoffee();

AW: Zeilenumbruch?

Hi,

einfach hier:
PHP:
 while ($zeile = mysql_fetch_array($result))
        {
            $zeile[nachricht] = nl2br($zeile[nachricht]);
            echo "  <strong>Eintrag $zeile[id]</strong>
                    <div align=\"right\">
                    Datum: $zeile[datum]<br /> 
                    Zeit: $zeile[zeit] <br />
                    </div>
                    Name: $zeile[name]<br /> 
                    Email: <a href=\"mailto:$zeile[email]\">$zeile[email]</a> <br /> 
                    Homepage: <a href=\"$zeile[homepage]\">$zeile[homepage]</a><br /> 
                    Wohnort: $zeile[ort]<br /> 
                    Nachricht: <br /> $zeile[nachricht]<br /><hr />";
        }

Schöne Grüße aus dem Sauerland, bzw von neben an (bin jeden Tag in Geisweid :p)
Chriss
 
Zuletzt bearbeitet:

SineTempore

Nicht mehr ganz neu hier

AW: Zeilenumbruch?

ich nimm dafür folgende funktion:
PHP:
function mynl2br($text) {
   return strtr($text, array("\r\n" => '<br>\r\n', "\r" => '<br>\r', "\n" => '<br>\n'));
}

VG
 

Muskelbiber

Der Muskelmann

AW: Zeilenumbruch?

Danke schon mal für die schnelle Hilfe! Jetzt klappt alles!!
 
Zuletzt bearbeitet von einem Moderator:
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Flatrate für Tutorials, Assets, Vorlagen

Zurzeit aktive Besucher

Statistik des Forums

Themen
118.565
Beiträge
1.538.067
Mitglieder
67.488
Neuestes Mitglied
Andrew56524
Oben