Ergebnis 1 bis 5 von 5

Thema: PHP Gästebuch Problem

  1. #1
    Jabra
    Gast

    Standard PHP Gästebuch Problem

    Hi,
    ich bin noch ein ziemlicher Anfänger in PHP und ich habe jetzt mit Hilfe des Buches PHP&MySQL easy in eigenes Gästebuch geschrieben.
    Doch jetzt habe ich vier Probleme:
    1. Wenn man in ein Feld, oder beide Felder nichts einträgt, soll eine Fehlermeldung erscheinen. Diese ist aber schon da, sobald ich die Seite öffne.
    2. Wenn ich etwas eintrage und dann auf Vorschau klicke, sehe ich nur das Datum und den Namen, aber nicht den eingegebenen Text. Wenn ich auf eintragen gehe genauso.
    3. Wenn ich dann etwas eintrage, sehe ich auch die anderen Einträge, die ich vorher schon gemacht habe(diese sind auch in meiner SQL Datenbank mit Text zu finden) wenn ich aller dings die Seite neu öffne stehen da nur wieder die Fehlermeldungen von 1.
    (4.) Dies ist eingentlich noch nichts so dramatisches, möchte ich aber auch noch beheben, vielleicht hägnt es sogar mit einem der anderen Punkte zusammen: Ich habe das Gästebuch mittels include in mein Template eingebunden,
    wenn ich also übers Template draufgehe sitzt das Gästebuch schön mittendrin, doch wenn ich dann auf Eintragen oder Vorschau klicke, öffnet er nur die guestbook.php im Browserfenster

    Hier der Code von guetbook.php:
    (in #mysql.inc sind die einloggdaten für die Datenbank)

    Code:
    <?
    include&#40;"#mysql.inc"&#41;;
    function PostVar&#40;$variablen_name&#41; &#123;
    $ergebnis = $_POST&#91;$variablen_name&#93;;
    if &#40;get_magic_quotes_gpc&#40;&#41;&#41; $ergebnis = stripslashes&#40;$ergebnis&#41;;
    return trim&#40;$ergebnis&#41;; &#125;
    function format&#40;$text&#41; &#123;
    $ergebnis = htmlentities&#40;$text&#41;;
    $ergebnis = str_replace&#40;"\r\n\r\n","
    
    ",$text&#41;;
    &#125;
    
    $eintrag = PostVar&#40;"eintrag"&#41;;
    $autor = PostVar&#40;"autor"&#41;;
    $status = $_POST&#91;'status'&#93;;
    
    $grenzwert = 1000;
    $anzeigen = true;
    $fehler = "";
    
    if &#40;empty&#40;$eintrag&#41;&#41; $fehler .= "[*]Eintrag fehlt";
    if &#40;empty&#40;$autor&#41;&#41; $fehler .= "[*]Name fehlt";
    if &#40;strlen&#40;$eintrag&#41; > $grenzwert&#41; $eintrag = substr&#40;$eintrag,0,$grenzwert&#41;;
    if &#40;!strpos&#40;$eintrag," "&#41; || strpos&#40;$eintrag," " > 60&#41;&#41; $eintrag = wordwrap&#40;$eintrag, 60, " ", 1&#41;;
    ?>
    
    <html>
    <head>
    <title>Mein G&auml;stebuch</title>
    <meta>
    </head>
    <body text="#000000" alink="#000000" link="#000000" vlink="#000000">
    <table width="100%" cellspacing="2" border="0"><tr><td>
    <font face="Tahoma" size="-1">
    Mein Gästebuch
    
    <?
    if &#40;!empty&#40;$fehler&#41;&#41; &#123;
    $anzeigen = false;
    echo "
    
    Leider konnte ihr Beitrag nicht angenommen werden&#58;</p>";
    echo "<ul>$fehler[/list]";
    &#125;
    elseif &#40;$status == "Vorschau"&#41; &#123;
    $anzeigen = false;
    $datum = date&#40;"\a\m j. n. Y \u\m H&#58;i"&#41;;
    ?>
    So sieht Ihr Eintrag derzeit aus&#58;
    <hr width="500" noshade>
    
    
    <?=format&#40;$eintrag&#41;?></p>
    
    
    
    
    <?=htmlentities&#40;$autor&#41;,", $datum"?>
    
    </p>
    <hr width="500" noshade>
    
    
    
    Um Ihren Beitrag zu bearbeiten, benutzen Sie bitte das Formular.
    </p>
    <?
    &#125; 
    elseif &#40;$status == "Eintragen"&#41; &#123;
    $query = "INSERT INTO guestbook SET
    datum = now&#40;&#41;,
    eintrag = '".addslashes&#40;$eintrag&#41;."',
    autor = '".addslashes&#40;$autor&#41;."'
    ";
    $sql = mysql_query&#40;$query&#41;
    or die&#40;mysql_error&#40;&#41;&#41;;
    &#125;
    
    if &#40;$anzeigen&#41; &#123;
    $query = "SELECT DATE_FORMAT&#40;datum,'am %e. %c. %Y um %k&#58;%i'&#41; AS datum, eintrag, autor FROM guestbook
    ORDER BY datum DESC";
    $sql = mysql_query&#40;$query&#41; or die&#40;mysql_error&#40;&#41;&#41;;
    while &#40;$ds = mysql_fetch_object&#40;$sql&#41;&#41; &#123;
    $eintrag = $ds->eintrag;
    $autor = $ds->autor;
    $datum = $ds->datum;
    ?>
    
    
    
    <?=format&#40;$eintrag&#41;?>
    </p>
    
    
    
    
    
    <?=htmlentities&#40;$autor&#41;,", $datum" ?>
    
    </p>
    <hr width="500" noshade>
    <?
    &#125;
    unset&#40;$eintrag,$autor&#41;;
    &#125;
    ?>
    <form action="guestbook.php" method="post">
    
    
    
    Ihr Eintrag &#40;maximal <?=$grenzwert ?> Zeichen&#41;&#58;
    
    <textarea style="width &#58; 600px; height &#58; 240px" name="eintrag"><?=htmlentities&#40;$eintrag&#41;?></textarea>
    </p>
    
    
    
    Ihr Name&#58;
    
    <input style="width &#58; 600px" type="text" maxlength="50" name="autor" value="<?=htmlentities&#40;$autor&#41;?>">
    </p>
    
    
    
    <input type="submit" name="status" value="Vorschau">
    <input type="submit" name="status" value="Eintragen">
    </p>
    </form>
    </td></tr>
    </table>
    </font>
    </body>
    </html>
    Ich hoffe ihr könnt mir helfen...
    Danke schonmal im Voraus.
    Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
    Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!

  2. #2
    König(in)
    Registriert seit
    06.06.2007
    Ort
    Bi
    Beiträge
    1.015
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Hi
    Zu 1. Mach um die ganze Fehlerabfrage ein if(!empty($status)) , dass sollte schon genügen.
    Sämtlicher Code erhebt keinen Anspruch auf syntaktische Korrektheit geschweige denn Ausführbarkeit und ist für die Implementation außerhalb der Beispiele nicht geeignet.

    Kein Support für kommerzielle Scripts | Kein kostenloser Support via ICQ

  3. #3
    Jabra
    Gast

    Standard

    Danke, der Befehl steht in dem Buch garnicht drinne...jetzt funktioniert es, da war auch noch nen anderer Fehler ganz oben drinne.

  4. #4
    Bandit
    Gast

    Standard

    Zitat Zitat von Jabra
    Danke, der Befehl steht in dem Buch garnicht drinne...
    Dann würde ich dir einfach mal die doku empfehlen. Leider werden in büchern nur sehr selten alle funktionen besprochen, wobei empty eigentlich niemals fehlen sollte.

  5. #5
    König(in)
    Registriert seit
    06.06.2007
    Ort
    Bi
    Beiträge
    1.015
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    -Meiner Meinung ging es Jabra nicht um die Funktion empty , sondern, dass die Abfrage fehlt. - Empty wird in dem Script ja schon an anderer Stelle verwendet.
    Sämtlicher Code erhebt keinen Anspruch auf syntaktische Korrektheit geschweige denn Ausführbarkeit und ist für die Implementation außerhalb der Beispiele nicht geeignet.

    Kein Support für kommerzielle Scripts | Kein kostenloser Support via ICQ

Ähnliche Themen

  1. gästebuch -> problem bei blätterfunktion
    Von wurmax im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 7
    Letzter Beitrag: 11.06.2008, 18:31
  2. Problem mit Gästebuch
    Von Neverdead im Forum HTML & CSS Forum
    Antworten: 14
    Letzter Beitrag: 26.09.2007, 12:09
  3. Gästebuch Problem
    Von Ochsenfrosch im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 1
    Letzter Beitrag: 21.12.2006, 10:48
  4. Problem mit fertig Gästebuch
    Von ad3nau im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 2
    Letzter Beitrag: 26.06.2006, 18:06
  5. Gästebuch Problem
    Von Shila im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 2
    Letzter Beitrag: 01.06.2005, 23:20

Stichworte

Berechtigungen

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