Ankündigung

Einklappen
Keine Ankündigung bisher.

Dateischreib Problem

Einklappen

Neue Werbung 2019

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

  • Dateischreib Problem

    Hi,

    ich versuche grad eine Seite zu schreiben, die Daten in eine Datei schreiben soll. Die Datei sieht so aus:

    Code:
    LaLa1|28be67936325b1f9139614b81e16603a|Kevir1|8,6|7-10
    Lala2|28be67936325b1f9139614b81e16603a|Kevir3|8,25|7-00
    LaLa3|28be67936325b1f9139614b81e16603a|Kevir3|8,4|7-20
    Wenn ich nun Daten hineinschreibe, sieht das ganze so aus:

    Code:
    LaLa3|28be67936325b1f9139614b81e16603a|Kevir3|8,4|7-20,25|7-00
    28be67936325b1f9139614b81e16603a|Kevir2|8,25|7-00
    LaLa3|28be67936325b1f9139614b81e16603a|Kevir3|8,4|7-20
    D.h. Die Zeile 1 wird mit der Zeile 2 überschrieben und bei Zeile 2 Fehlt die erste Gruppe.

    Auf der Seite gibt es die Option, das PW mitzuändern, wenn ich ankreuze, dann sieht das so aus:

    Code:
    LaLa3|28be67936325b1f9139614b81e16603a|Kevir3|8,4|7-20,25|7-00
    
    Lala2|28be67936325b1f9139614b81e16603a|Kevier2|8,25|7-00
    LaLa3|28be67936325b1f9139614b81e16603a|Kevir3|8,4|7-20
    Es wird eine Leerzeile erschaffen udn Zeile 1 wird wieder mir Zeile 3 überschrieben.

    Es wird ein Array in die datei geschrieben, wenn ich ihn mit var_dump ausgeben sieht er so aus:

    array(3) { [0]=> string(64) "LaLa3|28be67936325b1f9139614b81e16603a|Kevir3|8,4 |7-20,25|7-00 " [1]=> string(64) "LaLa2|28be67936325b1f9139614b81e16603a|Kevir2|8,2 5|7-00 " [2]=> string(54) "LaLa3|28be67936325b1f9139614b81e16603a|Kevir3|8,4 |7-20" }

    Im Array ist der fehler also auch, das Zeile 1 überschrieben wurde. Hier mal das Skript:

    PHP-Code:
    if(isset($_POST['daten_speichern']))  {
      
    $usertxt fopen("user.txt""r+");
      while(!
    feof($usertxt)) {
        
    $txt[] = fgets($usertxt2048); 
      }
      
      foreach(
    $txt AS $akt_zeile) {
        
    $akt_zeile explode("|"$akt_zeile);
        if(
    $akt_zeile[0] == $_COOKIE['user']) {
          
    #####PASSWORT#####
          
    if(isset($_POST['pwaendern'])) {
            
    $pw1 md5($_POST['pw1']);
            
    $pw2 md5($_POST['pw2']); 
            if(
    $pw1 == $pw2) {
              
    $akt_zeile[1] = $pw1;
            }
            else {
              
    $error "<span class=\"error\">Passw&ouml;rter stimmen nicht überein!</span><br>";
            }
          }
          
    #################
          #################
          
    $akt_zeile[2] = $_POST['name'];        
          
    $akt_zeile[3] = $_POST['sollzeit'];
          
    $akt_zeile[4] = $_POST['beginn_h']."-".$_POST['beginn_min'];
          
          
    $akt_zeile implode("|"$akt_zeile);
          
    $akt_zeile .= "\n";
        }
        else {
          
    $akt_zeile implode("|"$akt_zeile);
        }    
        
        
    ##SCHREIBEN##
        
    rewind($usertxt);
        
    fwrite($usertxt$akt_zeile); 
      }
      
    fclose($usertxt);


  • #2
    PHP: fopen - Manual

    'r+' Open for reading and writing; place the file pointer at the beginning of the file.
    [I]Es ist schon alles gesagt! Nur noch nicht von allen! (Karl Valentin)[/I]
    [I]Wenn du eine weise Antwort verlangst, musst du vernünftig fragen. (Johann Wolfgang von Goethe)[/I]

    Kommentar

    Lädt...
    X