Gästebucheinträge oben anfügen nicht unten?

  • Hallo,
    ich habe mir ein mehr oder weniger einfaches gästebuch gebaut (mit hilfe von tutorials) die einträge werden in einer .dat datei gespeichert und ausgelesen aber was mich stört ist das der neuste eintrag unten steht gibt es einen befehl wo die einträge oben in die .dat datei eingeschrieben werden?

    Ich schreibe mal den Code der Dateien rein

    Seite 1 eintrag.htm (wohl eher unwichtig)


    Seite2 gb.php


    Seite3 guestbook.php

  • Hallo Dominik!
    Ich kann mit deinem Script leider nichts anfangen, denn mit dem Auslesen und Speichern in Dateien kenn ich mich nich so aus, aber wenn du das ganze in MySQL speichern würdest, könnte ich dir helfen :P

    Mit dem Anzeigen ist es ganz einfach:
    Du erstellst eine Verbundung mit der Datenbank...

    Code
    $db_link = mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASS);
    SELECT
        Titel,
        Datum
    FROM
        News ORDER BY Datum DESC;

    Das "DESC" ist das wichtigste! Es ordnet die Beiträge von in diesem Fall "Datum" nach dem Neusten.

    Hoffe ich konnte dir helfen :)

    Kevin

    Kevin-H.de
    Free Templates | Scripte | PHP | HTML | CSS | Webdesign | HTML und CSS Umsetzungen

  • sql bin ich bei der erstellung immer umgangen ich habe zwar sql in der schule und hab sogar ne 1 aber der quellcode wird sehr unübersichtlich finde ich und ist am ende nicht mehr sehr leicht zu verstehen und jetzt hab ich auch schon soviel gemacht bei meinem aktuellen gästebuch was lange gedauert hat und ich möchte nun kein neues machen weil ich denke das es auch eine sehr einfache lösung für mein problem gibt nur finden muss man die erstmal.

    Code
    $datenbank = "daten.dat";
    $datei = fopen($datenbank,"a");
    fwrite($datei, $daten);


    Ich frgae mich was das "a" hinter $datenbank heißt in der anderen datei wo sie beschrieben wird glaube ich steht ein "r" hat das vielleicht damit etwas zutun denn ich habe gesehen das bei einer .txt Datei anstelle dessen ein "w+" benutzt wird nur ich weiß halt nicht was das heißt oder ob dort eine änderung hilft?

  • In daten.dat?
    Die wird vorher mit den angaben und der Formatierung beschrieben diese wird dann einfach wieder ausgelesen

    Die Daten die eingetragen werden:

    In der anderen Datei werden sie dann einfach wieder ausgelesen:

    Code
    $datenbank = "daten.dat";
    $datei = fopen($datenbank,"r");
    fpassthru($datei);


    Vielleicht kann man auch beim Daten einspechern die Tabelle so formatieren das sie sich immer oben einschreibt oder anfügt.

  • In Aktion sehen kann man das nicht da ich es über xampp laufen lasse.


    So sieht der Inhalt der Datei daten.dat nach drei einträgen aus, die dann in einer weiteren php seite ausgelesen wird.

  • Ich sehe grade ich hätte besser in einen anderen bereich gehen sollen inden für scripte also wenn ein admin das verschieben könnte.

  • So, ich hab mal nen bischen dran rumgebaut.

    gb.php

    guestbook.php

    Man könnt zwar noch einiges weitere verbessern, jedoch dürfte dies dein Problem lösen.

  • Jaaa das funktioniert super! vielen vielen dank dafür das du dir die zeit genommen hast das umzubauen echt super.
    bin nähmlich noch voll der anfänger hab php erst seit ner woche in der schule
    als thema und hab gesehen das man damit total super sachen machen kann.
    (fachhochschule fachbereich EDV und Wirtschaft lernt man Delphi java sql html css und den ganzen kram)

    aber was meinst du mit den verbesserungen die du angesprochen hast? inwiefern? Design? Aufbau?Code?Compatibilität?Extras(Wie Spamschutz)?

  • Oh, das gibt schon ne Menge Sachen.
    So ca. alle die du angesprochen hast :wink: jedoch ist das erstmal nicht so wichtig.
    Für ne Woche in der Schule war das schon ne Leistung also Kopf hoch.
    So mal kurze Übersicht, was man verbessern könnte ( nicht alles )
    Design-> etwas verfeinern, in der .dat nur Einträge abspeichern und später mit ner Schleife einfügen.
    Aufbau -> Weiter verfeinern z.B. die str_replace der smilies inner schleife erledigen lasse.
    Code -> Nur das nötige, (siehe Design), und mehr.
    Compatiblität -> Gib mal "" im Eintrag ein :D
    Extras -> Allesmögliche, iploggen, temporär sperren wegen antispam, spamschutz, bilderuploads uvm.

    Man kann vieles machen, jedoch benötigt alles Zeit und Lust.

  • Also das Design wird auf jeden fall noch geändert und überarbeitet find es grade auch oll aber erstmal soll alles funktionieren wie es soll.
    Schleifen kann ich leider noch net und weiß net wie ich es da lösen kann.
    Extras VERSUCHE ich nach und nach einzubauen an dem Spamschutz mit zahleneingabe habe ich mich gestern versucht aber hat alles net wirklich geklappt ist alles recht neu und umständlich was ich da gefunden habe und hab es nicht intigriert bekommen ist kompliziert.
    Dieses soll ich das in der form eintragen als wenn ich mich ins gästebuch einschreibe? oder wie soll ich das tun?
    Wenn du grade ne idee hast wegen dem Spamschutz und nen code mit dem ich klar komme dann gerne posten.

  • kurze zwischenfrage wie siht ein oder bei php aus ist doch so ein strich oder? aber wie macht man den?

  • da tritt kein fehler auf weil ich doch str replace "<" drin habe damit man keine html codes eingeben kann.

  • hmm ich weiß wohl net so wirklich was du meinst?!
    wie kann man in einem textfeld die zeichenmenge begrenzen?
    mit size= .... funktioniert es ja leider net