kostenloser Webspace werbefrei: lima-city


Probleme mit Flash+PHP Gästebuch

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    k*****h

    Hallo zuerstmal,
    nachdem ich jetzt viele Tutorials gelesen und noch mehr praktisch erarbeitet habe hab ich jetzt mein Flashg?stebuch fertig. Was ich jetzt noch m?chte w?re das die letzten eintr?ge zuerst angezeigt werden. Daf?r habe ich auch ein Tutorial gefunden aber diese m?glichkeit kann ich nicht anwenden da ich dazu die Eintr?ge mit "w" an den Anfang schreiben m?sste (die m?glichkeit ist im Script ganz unten unter " //Eintr?ge Sortieren" der auskommentierte block am ende des Scripts.
    Ich aber weil ich das ja wieder in Flash lade am Anfang der gbuch.txt (da kommen die Eintr?ge rein)
    eine Variabele zur ?bergabe von php an Flash stehen habe nicht an den Anfang sondern an das Ende der Gbuch.txt schreiben muss.
    Hat vielleicht einer von euch eine Idee wie ich das machen kann?
    Bitte nicht so kompliziert(oder dann doch bitte ausf?hrlich erkl?rt) da ich wirklich nur wenig Ahnung in php habe.
    Dann noch eins ich will in dem Script mit //Umlaute und Sonderzeichen in HTML Schreibweise umwandeln $nachricht = htmlspecialchars($nachricht);die Sonderzeichen umwandeln aber das geht auch nicht Sie werden einfach nicht geschrieben oder als rechtecke dargestellt.
    wenn ihr wollt k?nnt ihr das testen unter http://kwirsch.united-systems.org/Test/Gbuchklaus%203.html
    <?
    if (!isset($name) || !isset($email) || !isset($nachricht) || empty($name) || empty($email) || empty($nachricht)) {
    print "&result=Fail";
    print "&errorMsg=" . urlencode("Bitte alle Felder ausfuellen.");
    exit;
    }

    //Beitr?ge nummerieren
    $nummer_lesen=fopen("gaestezahl.txt", "r");
    $zahl=fgets($nummer_lesen, 10);
    $zahl=trim($zahl);
    $zahl++;
    $nummer_schreiben=fopen("gaestezahl.txt", "w");
    fwrite($nummer_schreiben, $zahl);



    //ip Adresse ermitteln
    $ip = $HTTP_SERVER_VARS["REMOTE_ADDR"];

    //Datum ermitteln
    $datum = date("d.m.y");

    //Uhrzeit ermitteln
    $uhr = date ("H:i:s");


    gbuch($zahl,$name,$ip,$datum,$uhr, $email,$hpage, $nachricht);

    function gbuch($zahl,$name,$ip,$datum,$uhr, $email,$hpage, $nachricht) {


    //Eintr?ge Bearbeiten

    //E-Mail
    //Gibt string zur?ck, in dem alle Buchstaben in Kleinbuchstaben
    //umgewandelt wurden
    $email = strtolower($email);
    //Backslashes entfernen
    $email = stripslashes ($email);
    //Entfernen ?berfl?ssiger Zeichen
    //Anfang und Ende einer Zeichenkette
    $email = trim ($email);
    // E-Mail formatieren
    $email ="<font color=\"#FF6600\"><u><A href=\"mailto:$email\">$email</A></u></font>";

    //Kommentar
    //HTML und PHP Code entfernen
    $nachricht = strip_tags($nachricht);
    //Umlaute und Sonderzeichen in HTML Schreibweise umwandeln
    $nachricht = htmlspecialchars($nachricht);
    //Entfernen von ?berfl?ssigen Zeichen
    $nachricht = trim($nachricht);
    //Backslashes entfernen
    $nachricht = stripslashes($nachricht);

    //Name
    //Backslashes entfernen
    $name = stripslashes ($name);
    //Entfernen ?berfl?ssiger Zeichen
    //Anfang und Ende einer Zeichenkette
    $name = trim ($name);

    //Homepage
    //Gibt string zur?ck, in dem alle Buchstaben in Kleinbuchstaben
    //umgewandelt wurden
    $hpage = strtolower($hpage);
    //Backslashes entfernen
    $hpage = stripslashes ($hpage);
    //Entfernen ?berfl?ssiger Zeichen
    //Anfang und Ende einer Zeichenkette
    $hpage = trim ($hpage);
    //Url formatieren richtig angeben
    $hpage="<font color=\"#FF6600\"><a href=\"http://$hpage\">$hpage</a></font>";







    //Eintr?ge zusammenfassen

    $daten="<font color=\"#FFFFFF\">Nr.:</font>$zahl<br>
    <font color=\"#FFFFFF\">Datum:</font>$datum<br>
    <font color=\"#FFFFFF\">Uhrzeit:</font>$uhr<br>
    <font color=\"#FFFFFF\">Ip.Nr:</font>$ip<br>
    <font color=\"#FFFFFF\">Name:</font>$name<br>
    <font color=\"#FFFFFF\">E-Mail:</font>$email<br>
    <font color=\"#FFFFFF\">Homepage:</font><u>$hpage</u><br>
    <font color=\"#FFFFFF\">Kommentar:<br></font>$nachricht\n\n";


    //Eintr?ge sortiren und den Letzten an den Anfang stellen


    //Eintragen

    $datei=fopen("gbuch.txt", "a+");
    fwrite($datei,$daten);
    fclose($datei);
    //Eintr?ge Sortieren
    /*$alteEintraege=file("gbuch.txt");
    $AnzahlDerEintraege=count($alteEintraege);
    $eintraege="$daten$alteEintraege[0]";
    for ($z=1; $z<$AnzahlDerEintraege; $z++)
    {
    $eintraege="$eintraege$alteEintraege[$z]";
    }

    $datei = fopen("gbuch.txt","w");
    fwrite ($datei, $eintraege);
    fclose($datei);*/


    if (!$datei) {
    print "&result=Fail";
    print "&errorMsg=" . urlencode("gbuch.txt kann nicht geoeffnet werden. Bitte CHMOD levels auf 766 setzen.");
    exit;
    }




    }


    print "&result=okay";
    exit;

    ?>
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Autor dieses Themas

    k*****h

    Hallo erstmal,
    das Problem mit den Umlauten habe ich gel?st.
  4. d*****s

    nun ich wei? jetzt leider nicht, wie du die gbuch.txt syntaktisch geschrieben hast, dementsprechend sieh das hier als beispiel an. da du ausserdem sagtest, dass du keine gro?e ahnung von php hast, hab ich zu jedem block referenzen hinzugef?gt.

    // Einlesen der Textdatei und Anlegen eines Arrays
      // http://de.php.net/manual/de/ref.array.php
      // http://de.php.net/manual/de/function.file.php
      $array = array();
      $file  = file("gbuch.txt");
        
      // Speichern der Zeilen in ein Array
      // http://de.php.net/manual/de/function.array-push.php
      // http://de.php.net/manual/de/control-structures.foreach.php
      foreach ($file as $line) {
        array_push($array,$line);
      }
      
      // Nun geben wir es r?ckw?rts wieder aus
      // http://de.php.net/manual/de/control-structures.for.php
      // http://de.php.net/manual/de/function.count.php
      for($i=count($array);$i>=0;$i--) {
        echo $array[$i];
      }
    
      // Um nur die letzten 3 Eintr?ge zu sehen, setzen wir
      // einfach eine andere Abbruchbedingung for die Schleife
      for($i=count($array);$i>=(count($array)-3);$i--) {
        echo $array[$i];
      }


    wenn du mir noch sagst, wie deine datei aussieht und wie die variablen hei?en und gef?llt werden m?ssen, schreib ichs noch dazu.

    [edit]
    & gt; steht f?r >

    Beitrag ge?ndert am 08/11/2004, 17:25 von des-sys
  5. Autor dieses Themas

    k*****h

    Hallo des-sys,
    vielen dank f?r deine M?he ich glaube das ist die L?sung meines Problems.
    Ich bin leider erst heute wieder dazu gekommen an dem Gbuch zu arbeiten aber ich habe dein Script vorab schonmal getestet und glaube wenn ich das jetzt einbau m?sste es gehen.
    Nochmal Vielen Dnak!
    Gru?
    KWirsch
  6. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!