Zeile von bis in Datei speichern ?

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

  • Zeile von bis in Datei speichern ?

    Hi,

    wie kann ich mit den Script die Zeilen 1 - 500 von einer datei IN eine Datei speichern ? Ich probiere schon eine ganze weile aber bekomms nicht so hin wie es dort beschrieben ist:

    PHP-Code:
    <?php
    $filename 
    'test.txt';
    $somecontent "Füge dies Datei hinzu\n";

    // Sichergehen, dass die Datei existiert und beschreibbar ist
    if (is_writable($filename)) {

       
    // Wir öffnen $filename im "Anhänge" - Modus.
       // Der Dateizeiger befindet sich am Ende der Datei, und
       // dort wird $somecontent später mit fwrite() geschrieben.
       
    if (!$handle fopen($filename"a")) {
             print 
    "Kann die Datei $filename nicht öffnen";
             exit;
       }

       
    // Schreibe $somecontent in die geöffnete Datei.
       
    if (!fwrite($handle$somecontent)) {
           print 
    "Kann in die Datei $filename nicht schreiben";
           exit;
       }

       print 
    "Fertig, in Datei $filename wurde $somecontent geschrieben";

       
    fclose($handle);

    } else {
       print 
    "Die Datei $filename ist nicht schreibbar";
    }
    ?>
    Danke im voraus

  • #2
    aber bekomms nicht so hin wie es dort beschrieben ist
    Bei dieser umfassenden, detaillierten Problembeschreibung kann es sich nur um Stunden handeln, bis jemand mit einer Lösung kommt

    Kommentar


    • #3
      wie kann ich mit den Script die Zeilen 1 - 500 von einer datei IN eine Datei speichern
      - lies die ersten 500 zeilen aus der datei fopen, fgets, fclose
      - speichere sie in einer datei fopen, fputs, fclose
      Die Zeit hat ihre Kinder längst gefressen

      Kommentar


      • #4
        Ich habe das so nach php.net gemacht siehe:

        PHP-Code:
        <?php
        $filename        
        =    'test';
        $filename_new    =    'test2';

        $handle fopen ("$filename""a+");
        while (!
        feof($handle)) {
           
        $buffer fgets($handle4096);
           }
        fclose ($handle); 

        if
          (!
        file_exists
                  
        ("".$filename_new."")
          )
          {
        fopen
                  
        ("".$filename_new."""a+");
          } 
        $handle fputs ($handle$buffer4096);
        fclose ($handle);
        ?>

        Warning: 1 is not a valid File-Handle resource in o:\foxserv\www\auslesen.php on line 16

        Warning: 1 is not a valid File-Handle resource in o:\foxserv\www\auslesen.php on line 17

        Kommentar


        • #5
          PHP-Code:
          $handle fopen (...);

          if(...) {
          fopen (...); } 
          [ ] dir fällt ein unterschied auf.
          I don't believe in rebirth. Actually, I never did in my whole lives.

          Kommentar


          • #6
            Aufjedenfall kommt jetzt ein anderer Fehler , sorry ich bin ein anfänger in den funktionen dateien:

            Warning: 1 is not a valid File-Handle resource in o:\foxserv\www\auslesen.php on line 16

            Warning: Supplied argument is not a valid File-Handle resource in o:\foxserv\www\auslesen.php on line 17

            Kommentar


            • #7
              Original geschrieben von 007killer
              Aufjedenfall kommt jetzt ein anderer Fehler
              und "jetzt" heißt ...? *seufz*


              "nachdem ich den code wie folgt geändert habe: ________, natürlich erst nachdem ich über deinen hinweis aus dem vorherigen posting gründlich nachgedacht habe."
              I don't believe in rebirth. Actually, I never did in my whole lives.

              Kommentar


              • #8
                PHP-Code:
                <?php
                $filename        
                =    'test';
                $filename_new    =    'test2';

                $handle fopen ("$filename""a+");
                while (!
                feof($handle)) {
                   
                $buffer fgets($handle4096);
                   }
                fclose ($handle); 

                if
                  (!
                file_exists
                          
                ("".$filename_new."")
                  )
                $handle fopen ("$filename_new""a+"); 
                $handle fputs ($handle$buffer4096);
                fclose ($handle);
                ?>

                Kommentar


                • #9
                  Original geschrieben von 007killer
                  PHP-Code:
                  $handle fputs ($handle$buffer4096); 
                  was soll das?

                  das steht so sicher nicht im manual.
                  I don't believe in rebirth. Actually, I never did in my whole lives.

                  Kommentar


                  • #10
                    außerdem den Code einfach hin knallen, ohne irgendwelche Kommentare, finde ich schon dreis

                    Kommentar


                    • #11
                      Original geschrieben von wahsaga
                      was soll das?

                      das steht so sicher nicht im manual.
                      Das is ja das Problem ! Ich weiss nicht welche Variablen von was ich da einsetzen soll ! Es wird da ja nicht einmal erklärt was ich da einsetzen soll...

                      Kommentar


                      • #12
                        Original geschrieben von 007killer
                        Es wird da ja nicht einmal erklärt was ich da einsetzen soll...
                        natürlich wird es das!

                        die seite verlinkt dich zu fwrite, weil fputs nur ein alias dafür ist, und dort werden die parameter in ausreichendem maße erklärt.
                        I don't believe in rebirth. Actually, I never did in my whole lives.

                        Kommentar


                        • #13
                          So hier das Script was ich eigentlich schon am Anfang hatte:

                          PHP-Code:
                          <?php
                          $filename        
                          =    'test';
                          $filename_new    =    'test2';

                          $handle fopen ("$filename""a+");
                          while (!
                          feof($handle)) {
                             
                          $buffer fgets($handle4096);
                             }
                          fclose ($handle); 

                          if
                            (!
                          file_exists
                                    
                          ("".$filename_new."")
                            )
                          $handle fopen ("$filename_new""a+");

                          // Sichergehen, dass die Datei existiert und beschreibbar ist
                          if (is_writable($filename_new)) {

                             
                          // Wir öffnen $filename_new im "Anhänge" - Modus.
                             // Der Dateizeiger befindet sich am Ende der Datei, und
                             // dort wird $somecontent später mit fwrite() geschrieben.
                             
                          if (!$handle fopen($filename_new"a+")) {
                                   print 
                          "Kann die Datei $filename_new nicht öffnen";
                                   exit;
                             }

                             
                          // Schreibe $somecontent in die geöffnete Datei.
                             
                          if (!fwrite($handle$buffer4096)) {
                                 print 
                          "Kann in die Datei $filename_new nicht schreiben";
                                 exit;
                             }

                             
                          fclose($handle);

                          } else {
                             print 
                          "Die Datei $filename_new ist nicht schreibbar";
                          }
                          ?>
                          So jetzt sagt mir welche Variable ich einsetzen soll die die Daten in die neue Datei übertragen / schreiben ?! Weil wenn ich es jetzt aufrufe wird nur "?>test2" eingetragen.

                          MfG
                          Zuletzt geändert von 007killer; 08.11.2004, 12:58.

                          Kommentar


                          • #14
                            Warum setzt du überhaupt in Strings Variablen rein?

                            Wie wärs wenn du einfach mal im Manual statt sinnlos zu kopieren einfach mal 5min überlegst was du überhaupt tust????

                            int fwrite ( resource handle, string string [, int length])

                            fwrite() schreibt den Inhalt einer Zeichenkette string in die Datei, auf welche der Dateizeiger handle zeigt. Wenn der length Parameter gegeben ist, wird das Schreiben nach length Bytes beendet, oder wenn das Dateiende (EOF) erreicht ist. Je nachdem was eher eintritt.
                            [color=blue]MfG Payne_of_Death[/color]

                            [color=red]Manual(s):[/color] <-| PHP | MySQL | SELFHTML |->
                            [color=red]Merke:[/color]
                            [color=blue]Du brauchst das Rad nicht neu erfinden ! [/color]<-ForumSuche rettet Leben-> || <-Schau in den Codeschnippsels->

                            Murphy`s Importanst LAWS
                            Jede Lösung bringt nur neue Probleme
                            Das Fluchen ist die einzige Sprache, die jeder Programmierer beherrscht.
                            In jedem kleinen Problem steckt ein großes, das gern raus moechte.

                            Kommentar


                            • #15
                              Weil ich vielleicht mal das nicht verstehe was php.net mit

                              EDIT:
                              int fwrite ( resource handle, string string [, int length])

                              fwrite() schreibt den Inhalt einer Zeichenkette string in die Datei, auf welche der Dateizeiger handle zeigt. Wenn der length Parameter gegeben ist, wird das Schreiben nach length Bytes beendet, oder wenn das Dateiende (EOF) erreicht ist. Je nachdem was eher eintritt.



                              meint und deswegen ich vielleicht HIER FRAGE ???????????

                              Kommentar

                              Lädt...
                              X