fwrite() nicht anhängen sondern einfügen

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

  • fwrite() nicht anhängen sondern einfügen

    weiß einer wie ich daten in eine datei schreiben kann und dabei die neuen Daten immer vor die alten. bis jetzt siehts so aus
    PHP-Code:
    $timestamp time();
    $datum date("d.m.Y",$timestamp);
    $daten="<br><table width=459 border=1 cellpadding=0 cellspacing=0 bgcolor=#FFFFFF>
    <tr><td width=161 height=22 valign=top bgcolor=#FFFFFF>
    <b>Name:</b> 
    $name</td><td width=72 valign=top bgcolor=#FFFFFF>
    <a href=mailto:
    $email>E-Mail</a></td><td width=86 valign=top>
    <a href=
    $hp>HP</a></td><td width=133>$datum</td></tr>
    <tr bgcolor=#CCCCCC><td height=121 colspan=4 valign=top>
    $eintrag</td></tr></table><br><br>";
    $datenbank "daten.dat";
    $datei fopen($datenbank,"a");
    fwrite($datei$daten); 
    allerdings wird immer nur hinten angehängt und nicht an erster stelle eingefügt
    Zuletzt geändert von smepal; 02.11.2005, 16:23.

  • #2
    Das sollte doch eigentlich mit fseek (http://uk.php.net/fseek) gehen.

    Gruß

    Le Cheffe

    Kommentar


    • #3
      Re: fwrite() nicht anhängen sondern einfügen

      1. Bitte Regeln lesen, und Code umbrechen!

      2. http://php-faq.de/q/q-datei-einfuegen.html
      I don't believe in rebirth. Actually, I never did in my whole lives.

      Kommentar


      • #4
        so hab es jetzt mal ein bissel geändert funzt jetzt so wie es soll
        PHP-Code:
         <?php
        include("config.php");

        $filesize filesize($gbfile);
        $file fopen("$gbfile","r");
        $buffer fread($file,$filesize);
        fclose($file);
        $timestamp time();
        $datum date("d.m.Y",$timestamp);

        $file fopen("$gbfile","w");
        $daten="<br><table width=459 border=1 cellpadding=0 cellspacing=0 bgcolor=#FFFFFF>
        <tr><td width=161 height=22 valign=top bgcolor=#FFFFFF>
        <b>Name:</b> 
        $name</td>
        <td width=72 valign=top bgcolor=#FFFFFF>
        <a href=mailto:
        $email>E-Mail</a></td>
        <td width=86 valign=top><a href=
        $hp>HP</a></td>
        <td width=133>
        $datum</td></tr><tr bgcolor=#CCCCCC>
        <td height=121 colspan=4 valign=top>
        $eintrag</td>
        </tr>
        </table><br>
        <br>"
        ;
        $message_table ="$daten";
        fputs($file,"$message_table\n$buffer");
        fclose($file);



        ?>

        Kommentar


        • #5
          Also ich habe eine Datensatzverwaltung auf Filebasis implementiert. Die liest die Datensätze alle ein wirft zu löschende raus, fügt neue ein oder ändert welche. Dann wird die gesamte Datei neu geschrieben.
          Das ist nicht ebsonders performant, aber eine besser Lösung ist mir da auch nicht eingefallen, da PHP ja nunmal eine Interpretersprache ist.

          Gruss Niels

          Kommentar

          Lädt...
          X