1. Dashboard
  2. Artikel
  3. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  4. Forum
    1. Unerledigte Themen
  • Anmelden
  • Registrieren
  • Suche
Dieses Thema
  1. HTML - Webmaster Forum
  2. Programmierung - Entwickler Forum
  3. PHP Forum - Apache - CGI - Perl - JavaScript und Co.

GB Probleme

  • goodn8
  • 22. Oktober 2007 um 16:30
  • goodn8
    Meister(in)
    Beiträge
    268
    • 22. Oktober 2007 um 16:30
    • #1

    Hallo zusammen ich bin der Totale PHP Vollidiot... aber versuche mir gerade ein GB zu erstellen jetzt habe ich das Problem das ich zwar ein tut dazu gefunden habe das ich auch verstehe aber ich weiß nich wie ich etwas verändern kann weil ich in der Materie nicht drin stecke und mom auch keine Zeit habe mich einzuarbeiten weil ich kurz vor meiner Abschlussprüfung stehe...

    also ich habe jetzt eine datei in der ich das formular eintagen lassen kann, dieses speichert mir den text usw in einer *.dat ab, von wo ich sie wieder auslesen lasse das Problem ist in dem tut wurde jetzt nicht erklärt wie man das ganze in eine schöne Tabelle eintragen lassen kann oder wie ich die Reihenfolge ändern kann, denn momentan ist es so dass erst der Text und dann der Verfasser auf der Page steht., weiterhin würde ich gerne noch ein datum zu den posts haben weiß aber nich wie ich das realisieren kann.

    wäre nice wenn mir da wer ma helfen könnte

    MFG

    [Blockierte Grafik: http://goodn8.go.funpic.de/banner/Augenbanner.gif]

  • Sebian
    Schüler
    Beiträge
    85
    • 22. Oktober 2007 um 18:35
    • #2

    müsstest mal zeigen was du schon programmiert hast^^

  • goodn8
    Meister(in)
    Beiträge
    268
    • 22. Oktober 2007 um 20:00
    • #3

    hier ist mal der link zu dem TUT das ich gemacht habe, da steht alles drin ;)

    http://www.phpbox.de/php_tutorials/gaestebuch1.php

    mfg

    [Blockierte Grafik: http://goodn8.go.funpic.de/banner/Augenbanner.gif]

  • goodn8
    Meister(in)
    Beiträge
    268
    • 23. Oktober 2007 um 16:45
    • #4

    neuer_eintrag.html:

    HTML
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>G&auml;stebuch/Neuer Eintag</title>
    
    
    <script type="text/javascript">
    
    
    function chkFormular () {
    
    
      if  (document.Formular.name.value == "") {
          alert("Bitte geben Sie einen Namen ein.");
          document.Formular.name.focus();
          return false;
      }
    
    
       if  (document.Formular.eintrag.value == "") {
          alert("Bitte geben Sie einen Beitrag ein.");
          document.Formular.eintrag.focus();
          return false;
      }
    
    
      						}
    </script>
    </head>
    <body bgcolor="#5B5B5B">
    <form name="Formular" method="post" action="gb.php" onSubmit="return chkFormular()">
    <pre>
    <table>
    <tr>
    <td>Ihr Name:</td>
    <td><input type="text" name="name"></td>
    </tr>
    <tr>
    <td>eMail:</td>
    <td><input type="text" name="email"></td>
    </tr>
    <tr>
    <td>Ihr Eintrag:</td>
    <td ><textarea name="eintrag" cols="80" rows="25"></textarea></td>
    </tr>
    <tr>
    <td><input type="submit" name="Button" value="Absenden" onSubmit="return chkFormular()"></td></tr>
    </table>
    </pre>
    </form>
    </body>
    </html>
    Alles anzeigen

    gb.php:

    PHP
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>Untitled Document</title>
    </head>
    <body>
    <?php
    
    
    $daten=$_POST[eintrag]."
    von <a href=mailto:".$_POST[email].">".$_POST[name]."</a>
    
    
    ";
    
    
    $datenbank = "daten.dat";
    
    
    $datei = fopen($datenbank,"a");
    
    
    fwrite($datei, $daten);
    
    
    ?>
    
    
    Eintrag erfolgreich.
    
    
    [url='guestbook.php']Zurück zum Gästebuch[/url]
    </body>
    </html>
    Alles anzeigen

    guestbook.php:

    PHP
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>Untitled Document</title>
    </head>
    <body>
    <center><h2>Mein Gästebuch</h2>
    
    
    [url='eintragen.htm']Ins Gästebuch eintragen[/url]</center>
    
    
    <?php
    
    
    $datenbank = "daten.dat"; $datei = fopen($datenbank,"r");
    
    
    fpassthru($datei);
    
    
    ?>
    </body>
    </html>
    Alles anzeigen

    so ich hoffe is richtig so ;) sry hatte vergessen das der link mom nich funzt

    mfg und danke schon mal im Voraus.

    [Blockierte Grafik: http://goodn8.go.funpic.de/banner/Augenbanner.gif]

  • yngvar
    Meister(in)
    Beiträge
    275
    • 23. Oktober 2007 um 18:46
    • #5

    gb.php

    PHP
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>Untitled Document</title>
    </head>
    <body>
    <?php
    
    
    $daten = "<tr><td>Geschrieben von: [url='mailto:'.$_POST[']".$_POST['name']."[/url] am ".date("d.m \u\m H:m",time())."
    
    
    ".nl2br($_POST['eintrag']);
    
    
    $datenbank = "daten.dat";
    
    
    $datei = fopen($datenbank,"a");
    
    
    fwrite($datei, $daten);
    
    
    ?>
    
    
    Eintrag erfolgreich.
    
    
    [url='guestbook.php']Zurück zum Gästebuch[/url]
    </body>
    </html>
    Alles anzeigen

    guestbook.php

    PHP
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>Untitled Document</title>
    </head>
    <body>
    <a name='start'><center><h2>Mein Gästebuch</h2>
    
    
    [url='eintragen.htm']Ins Gästebuch eintragen[/url]</center>
    
    
    
    
    [url='#ende']Zum Ende[/url]
    
    
    
    
    <?php
    
    
    $datenbank = "daten.dat"; $datei = fopen($datenbank,"r");
    echo "<table border=1>";
    fpassthru($datei);
    echo "</table>";
    ?>
    
    
    
    
    
    
    
    
    [url='#start']Zum Anfang[/url]
    <a name='ende'>
    </body>
    </html>
    Alles anzeigen

    eintragen.htm

    HTML
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>G&auml;stebuch/Neuer Eintag</title>
    
    
    <script type="text/javascript">
    
    
    function chkFormular () {
    
    
      if  (document.Formular.name.value == "") {
          alert("Bitte geben Sie einen Namen ein.");
          document.Formular.name.focus();
          return false;
      }
    
    
       if  (document.Formular.eintrag.value == "") {
          alert("Bitte geben Sie einen Beitrag ein.");
          document.Formular.eintrag.focus();
          return false;
      }
    
    
                        }
    </script>
    </head>
    <body bgcolor="#5B5B5B">
    <form name="Formular" method="post" action="gb.php" onSubmit="return chkFormular()">
    <pre>
    <table>
    <tr>
    <td>Ihr Name:</td>
    <td><input type="text" name="name"></td>
    </tr>
    <tr>
    <td>eMail:</td>
    <td><input type="text" name="email"></td>
    </tr>
    <tr>
    <td>Ihr Eintrag:</td>
    <td ><textarea name="eintrag" cols="80" rows="25"></textarea></td>
    </tr>
    <tr>
    <td><input type="submit" name="Button" value="Absenden" onSubmit="return chkFormular()"></td></tr>
    </table>
    </pre>
    </form>
    </body>
    </html>
    Alles anzeigen


    Ich hab es mal etwas umgeschrieben. Kannst es dir hier ja mal anschauen: http://start.topfkuchration.de/guestbook

    [Blockierte Grafik: http://topfkuchration.de/Medien/image9.png]

  • phpfan
    Gast
    • 23. Oktober 2007 um 21:31
    • #6

    Ein Gästebuch, bei dem HTML-Formatierungen in eine Datei geschrieben werden, ist schon Schrott. Außerdem werden die Daten ungeprüft übernommen, da darf man sich nicht wundern, wenn ein Komiker mit JavaScript Angriffe startet oder mit eingegebenem HTML-Code das Layout zerschießt.

  • yngvar
    Meister(in)
    Beiträge
    275
    • 24. Oktober 2007 um 06:41
    • #7

    Dann lässt man die 3 Variablen halt nochmal überprüfen.. Da gabs irgend nen Befehlk, weis nur nich mehr welchen xD

    [Blockierte Grafik: http://topfkuchration.de/Medien/image9.png]

  • goodn8
    Meister(in)
    Beiträge
    268
    • 24. Oktober 2007 um 14:50
    • #8

    super danke erstmal aber ich hätte noch ne frage und zwar kann ich es auch einrichten, dass ich den namen und das datum in einer spalte habe und darunter eine neue spalte mit mit dem text, die ich dann farbig hinterlegen kann?
    und wenns möglich ist würde ich gerne noch wissen wie ich es hin bekomme das immer der aktuellste Beitrag oben steht... wenn ihr mir da noch ma weiter helfen könntet wäre das nich schlecht ich glaube denn Rest würde ich mir dann mit der zeit alleine beibringen

    mfg

    [Blockierte Grafik: http://goodn8.go.funpic.de/banner/Augenbanner.gif]

  • phpfan
    Gast
    • 24. Oktober 2007 um 14:59
    • #9
    Zitat von goodn8

    super danke erstmal aber ich hätte noch ne frage und zwar kann ich es auch einrichten, dass ich den namen und das datum in einer spalte habe und darunter eine neue spalte mit mit dem text, die ich dann farbig hinterlegen kann?


    Das ist eine Frage des Layouts. Mit ein paar HTML- und CSS-Kenntnisses solltest du das hinbekommen.

    Zitat von goodn8


    und wenns möglich ist würde ich gerne noch wissen wie ich es hin bekomme das immer der aktuellste Beitrag oben steht


    Das wird schon etwas komplizierter. Und wie schon erwähnt, wenn man die Formatierungen mit in die Datei schreibt, wird es noch schlimmer.

    Kurze Anleitung:
    1. Daten sammeln, htmlentities und dann ein nl2br, damit Zeilenumbrüche nicht in die Datei kommen.
    2. Daten zu einem String mit beliebigen Trennzeichen verbinden
    3. Datei mit file komplett einlesen
    4. String in die Datei schreiben und dann die gelesenen Datensätze ebenfalls in die Datei schreiben.

  • goodn8
    Meister(in)
    Beiträge
    268
    • 24. Oktober 2007 um 15:05
    • #10

    k ich versuch das mal ;) auch wenn ich nich ganz schlau draus geworden bin :D
    aber mir ist aufgefallen das es noch ein anderes Problem gibt, wenn ich in das GB ein " eintage macht die ausgebe vor dem " noch ein / weiß wer wie ich das verhindern kann?

    mfg

    [Blockierte Grafik: http://goodn8.go.funpic.de/banner/Augenbanner.gif]

  • phpfan
    Gast
    • 24. Oktober 2007 um 15:13
    • #11

    stripslashes, siehe http://www.php.net/manual/de/

  • yngvar
    Meister(in)
    Beiträge
    275
    • 24. Oktober 2007 um 16:33
    • #12

    bei der sortierung, dass der neuste beitrag immer oben steht würde ich im allgemeinem eine richtige Datenbank empfehlen. Lso MySQL oder ähnliches. Mit Textdateien finde ich es persöhnlich zu kompliziert, kann aber auch daran liegen, dass ich mich nie in die Materie eingearbeitet habe...

    Gruß

    [Blockierte Grafik: http://topfkuchration.de/Medien/image9.png]

Tags

  • www
  • html
  • http
  • text
  • star
  • layout
  • input
  • code
  • php
  • gästebuch
  • datum
  • anleitung
  • zeichen
  • datei
  • daten
  • javascript
  • ebuch
  • script
  • css
  • angriffe
  • schrott
  • variable
  • html-code
  • string
  • komiker
  1. Datenschutzerklärung
  2. Impressum
Community-Software: WoltLab Suite™
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
Zitat speichern