Ankündigung

Einklappen
Keine Ankündigung bisher.

Wichtig => GB selber gebastelt: Nur ein Problem: rewind()

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Chrisber
    hat ein Thema erstellt Wichtig => GB selber gebastelt: Nur ein Problem: rewind().

    Wichtig => GB selber gebastelt: Nur ein Problem: rewind()

    Hi,

    Ich hab mir ein GB gebastelt was auch wunderbarst funzt, nur eins nicht:

    Der älteste Beitrag kommt ganz oben, der neueste ganz unten.

    Ich hab das mal mit rewind probiert funzt aber nicht =(

    PHP-Code:
    <?php 
    if (isset($eintragen)) { 
    $file fopen("gb/gb.txt","a+"); 
    $eintrag ereg_replace("
    "
    ,
    "
    ,$eintrag); 
    $eintrag stripslashes($eintrag); 
    $datum date("d.m.y - H:i");
    $gb $nick."|".$page."|".$mail."|".$rekord."|".$datum."|".$kommentar."\n"

    rewind($file);
    fwrite($file,$gb); 
    fclose($file); 
    echo 
    "Dein Kommentar wurde erfolgreich ins Gästebuch eingetragen!";

    ?>
    Gibt es auch noch andere möglichkeiten?

  • Gast-Avatar
    Ein Gast antwortete
    $gb_file = fopen($file,"r");

    while (!feof($gb_file)) {
    $zeile = fgets($gb_file,500);
    Du kannst auch deine Datei mit file() und foreach() auslesen.
    Ist vieleicht noch einfacher als mit fgets() zu fummeln.

    Einen Kommentar schreiben:


  • Chrisber
    antwortet
    Es war nur ein leerzeichen^^

    Einen Kommentar schreiben:


  • Chrisber
    antwortet
    LEUTE!!!!!

    Es geht

    100000 Dank

    Einen Kommentar schreiben:


  • Chrisber
    antwortet
    o.O

    Was auch immer ne foreach schleife is, ich gebs so aus :

    PHP-Code:
    <?php 
    $file 
    "gb/gb.txt";
    $gb_file fopen($file,"r"); 

    while (!
    feof($gb_file)) {
       
    $zeile fgets($gb_file,500);
       
    $gb explode("|"$zeile);
    ?>
    <tr>
     <td class="t" width="500">[b]<?php echo $gb[0]; ?>-[url="http://<?php echo $gb[1]; ?>"]Clan-Page[/url]-[email="<?php echo $gb[2]; ?>"]E-Mail[/email]-Punkte : <?php echo $gb[3]; ?>-<?php echo $gb[4]; ?>[/b]</td>
    </tr>
    <tr>
     <td class="t" width="500"><?php echo $gb[5]; ?></td>
    </tr>
    <tr>
     <td class="t" width="500">
    <hr color="#FFFF00" size="3" width="500">
    </td>
    </tr>
    <?
       }
    fclose($gb_file);
    ?>
    Aber das mit dem Array sry aber ich arbeite erst seit 4 Wochen mit Arrays und hab noch keine Ahnung davon oO

    Einen Kommentar schreiben:


  • Chr!s
    antwortet
    Uff, den Fehler
    Warning: fread(): Length parameter must be greater than 0. in /usr/export/www/vhosts/funnetwork/hosting/uxe/gb/check_gb.php on line 6
    wirst du wohl noch selber ausmerzen können..
    Wenn du die ganzen Einträge als eine Zeile in die Datei schreibst, anschließend mit \n abschließt, lässt sich das perfekt mit Arrays lösen:
    PHP-Code:
    <?php
    $gbEntries
    file('gb/gb.txt');
    ?>
    So bekommst du die ganze Datei in ein Array .. Dieses kannst du ja dann mit array_reverse() umdrehen, und dann die einzelnen Einträge in einer foreach() Schleife ausgeben.

    Einen Kommentar schreiben:


  • Chrisber
    antwortet
    Warning: fread(): Length parameter must be greater than 0. in /usr/export/www/vhosts/funnetwork/hosting/uxe/gb/check_gb.php on line 6
    Dein Kommentar wurde erfolgreich ins Gästebuch eingetragen!

    Achja ich hab das rewind fclose und fwrite verbessert mit $handle

    Geht net!

    Einen Kommentar schreiben:


  • ZiMD
    antwortet
    if (isset($eintragen)) {
    $handle = fopen("gb/gb.txt","r");
    $alt = fread($handle, filesize ("gb/gb.txt"));
    $handle = fopen("gb/gb.txt","w");
    $eintrag = ereg_replace("
    ","
    ",$eintrag);
    $eintrag = stripslashes($eintrag);
    $datum = date("d.m.y - H:i");
    $gb = $nick."|".$page."|".$mail."|".$rekord."|".$datum." |".$kommentar."\n";

    rewind($file);
    fwrite($file,$gb.$alt);
    fclose($file);
    echo "Dein Kommentar wurde erfolgreich ins Gästebuch eingetragen!";
    }

    Einen Kommentar schreiben:


  • Chrisber
    antwortet
    EDIT//Ich meine so:

    PHP-Code:
    <?php 
    if (isset($eintragen)) { 
    $handle fopen("gb/gb.txt","r"); 
    $eintrag ereg_replace("
    "
    ,
    "
    ,$eintrag); 
    $eintrag stripslashes($eintrag); 
    $gb fread($handlefilesize("gb/gb.txt"));
    $datum date("d.m.y - H:i");
    $gb $nick."|".$page."|".$mail."|".$rekord."|".$datum."|".$kommentar."\n"

    rewind($handle);
    fwrite($handle,$gb); 
    fclose($handle); 
    echo 
    "Dein Kommentar wurde erfolgreich ins Gästebuch eingetragen!";

    ?>
    so?

    Einen Kommentar schreiben:


  • ZiMD
    antwortet
    ahh so is das also...

    meine unwissenheit kommt daher dass ich schon lange mit datenbanken arbeite und aja ich hab mich auch schon mit register_globals beschäftigt...

    de.php.net/fread

    Einen Kommentar schreiben:


  • Chrisber
    antwortet
    Sehr witzig...

    Das es dann am Anfang is weiß ich auch aber dann überschreibt er ja den rest omG

    Einen Kommentar schreiben:


  • ZiMD
    antwortet
    noch einfacher

    ersetz das a+ durch ein r+

    Einen Kommentar schreiben:


  • Chrisber
    antwortet
    öhm was?
    Bitte nochmal für Newbies^^

    Einen Kommentar schreiben:


  • ZiMD
    antwortet
    jo einfach lesen und dann $neuer_text.$alter_text

    Einen Kommentar schreiben:


  • Chrisber
    antwortet
    Keiner eine Idee???

    Einen Kommentar schreiben:

Lädt...
X