Anzeige:
Ergebnis 1 bis 2 von 2

Thema: Probleme mit Gästebuch/Ascii Datenbank

  1. #1
    Registrierter Benutzer
    Registriert seit
    02.06.2001
    Beiträge
    8

    Probleme mit Gästebuch/Ascii Datenbank

    Hi!

    Das Problem:

    Ich hab ein kleines Gästebuch geschrieben, dass funzt auch.....d.h. fast.

    So werden die Dateien ausgelesen:

    function gbuch()
    {

    $datei = "./data/gbuch.inc";
    $trennzeichen = "|:_.-._:|";
    if(file_exists($datei))
    {
    $zeile = file($datei);
    for($i=0;$i<sizeof($zeile);$i++)
    {
    if(($zeile[$i] != "")||($zeile[$i] != "\n"))
    {
    $eintrag = explode($trennzeichen,$zeile[$i]);
    switch($eintrag[2]) {

    case 1: $wertung='<img src=./img/gbuch/1.png border=0>';
    case 2: $wertung='<img src=./img/gbuch/2.png border=0>';
    case 3: $wertung='<img src=./img/gbuch/3.png border=0>';
    case 4: $wertung='<img src=./img/gbuch/4.png border=0>';
    case 5: $wertung='<img src=./img/gbuch/5.png border=0>';
    }

    echo "
    <table border=0 cellpadding=2 cellspacing=0 width=800>
    <tr><td height=15>&nbsp;</td></tr>
    <tr><td class=\"header_3\" width=\"800\" height=\"22\" colspan=2><B><font color=\"#ffffff\">$eintrag[0]</font></B></td></tr>
    <tr><td class=text_header_box colspan=2>Eintrag von $eintrag[1], $eintrag[2]</td></tr>
    <tr><td class=news_text_box width=105>$wertung</td><td>$eintrag[4]</td></tr>
    <tr><td class=text_header_box colspan=2><a href=$PHP_SELF?aktion=gbucheintrag>Neuer Eintrag</a></td></tr>
    </table>
    ";
    }
    }
    }
    }

    Mit dem Case is nur ne Fallunterscheidung um ein Wertungsbild anzuzueigen.

    So werden die Dateien geschrieben:

    <?php
    echo "Danke für ihren Eintrag!";
    $trennzeichen = "|:_.-._:|";
    $datei = "./data/gbuch.inc";
    $neue_zeile=nl2br(htmlentities("\n" . $uschrift . $trennzeichen . $name . $trennzeichen . $mail . $trennzeichen . $wertung . $trennzeichen . $text));
    $zeile=file("$datei");
    $zeile[sizeof($zeile)] = $neue_zeile;
    speichern("$datei",implode("$trennzeichen",$zeile) );


    function speichern($datei, $eintragen)
    {
    $fp = fopen($datei, "w");
    fwrite($fp, $eintragen);
    fclose($fp);
    }

    So. Das geht auch. Doch wenn einer mit Zeilenumbrüchen schreibt, z.B. folgendes:
    <Bsp>
    Hallo

    Gute Seite
    </Bsp>

    Dann hab ich 3 Einträge, weil der eingegebene Text nicht in eine Zeile geschoben wird.
    Verstanden? Kann mir jmnd weiterhelfen?


    mfg
    cocaxx
    ---------------------
    www.linux-starter.net

    Duron 700, 384MB Ram
    RedHat 7.2 Kernel 2.4.7 *g*
    Ximian GNome 1.4 XFree 4.1
    Geforce2mx
    Nvidia GLx 3D Open Gl

  2. #2
    Registrierter Benutzer
    Registriert seit
    11.05.2002
    Ort
    Krefeld
    Beiträge
    17
    Hi
    Na ja, ist nicht gerade saubere Programmierung aber erfüllt den Zweck, jag den string vor dem schreiben in in die Datei durch nl2br(), dann werden die strings mit dem html neuzeilen tag (<br>) in die Datei geschrieben.

    Mfg jensemann
    Hilfe zu LFS Problemen: http://www.lfsforum.org

Lesezeichen

Berechtigungen

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