Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] Problem beim Speichern von Daten in TXT-File

Einklappen

Neue Werbung 2019

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

  • [Erledigt] Problem beim Speichern von Daten in TXT-File

    Hallo zusammen

    Mein Wunsch wäre, dass mein Script (siehe unten) eine variable $datum in ein TXT-File speichert. Eine andere Seite soll dann das Datum aus diesem File auslesen und anzeigen.

    Die Variable $datum wird duch ein Formular gefütter:
    Code:
    <form name="form1" method="post" action='<?php echo $PHP_SELF; ?>'>
      <table width="464" border="0">
        <tr>
          <td width="177">
    
    N&auml;chstes Datum <span class="style2">(TT/MM/JJJJ)</span>:</p>      </td>
          <td width="149"><input type="text" name="datum"></td>
          <td width="79"><input type="submit" name="Submit" value="Submit"></td>
        </tr>
      </table>
    </form>
    Auf der selben Seite ist ganz oben folgender PHP-Script enthalten:
    Code:
    <?php
    
    if (!file_exists("datum.txt")){fopen("datum.txt", "a");}
    $datei=fopen("datum.txt","r+");
    rewind($datei);
    if (isset($datum)) {fputs($datei,$datum);}
    fclose($datei);
    $datumaktuell=fgets($datei,12);
    echo $datumaktuell;
    ?>
    Aber irgendwie erstellt PHP das File nicht oder kann es aus irgendeinem Grund nicht erstellen. Ist es möglich, dass man Server-seitig was ändern muss (Schreibrechte oder so ähnlich).

    Danke für Eure geschätzte Hilfe

    Gruss

    Michael Bürgy
    [/code]


  • #2
    guck mal was in der $datum drinsteht
    würde mich nicht wundern wenn da gar nix drinsteht weil sie nicht gesetzt ist
    das liegt an register globals=off
    11.20. Warum funktionieren meine Formulare nicht?

    Kommentar


    • #3
      $datum wurde gesetzt. Mit Befehl echo $datum ganz (im Script ganz oben angesetzt) wird der Wert, den ich eingegeben habe angezeigt.

      Kommentar


      • #4
        kommt denn keine fehlermeldung?
        gib mal echo "ja" aus wenn er die schleife betreten hat um sicherzugehen dass er diese überhaupt betritt

        Kommentar


        • #5
          <?php

          if (!file_exists("datum.txt")){fopen("datum.txt", "a");}
          $datei=fopen("datum.txt","r+");
          rewind($datei);
          if (isset($datum)) {fputs($datei,$datum);}
          fclose($datei);
          $datumaktuell=fgets($datei,12);
          echo $datumaktuell;
          ?>

          Woher nimmst du das fgets()?
          In diesem Moment ist gar keine Datei geöffnet, also öffne sie noch ein mal neu!

          Kommentar


          • #6
            Ja sorry.. habe ich verbessert, habe fclose($datei); ganz an den schluss des scripts gehängt...

            Ähm, ich habe alles schon überprüft: $datum ist gesetzt und die beiden IF-Anweisungen werden auch korrekt ausgeführt (Geprüft mit echo-Ausgaben) alles einwandfrei... Mein Problem ist lediglich, dass weder ein File geöffnet noch erstellt noch beschrieben wird. Ich habe echt keine Ahnung wieso...

            Gruss

            Michi

            Kommentar


            • #7
              Code:
              <? 
              chmod("datum.txt", 0777);
              if(!file_exists("datum.txt")){ 
              fopen("datum.txt", "w+");
              fclose($datei); } 
              $datei=fopen("datum.txt", "r+"); 
              rewind($datei); 
              if(isset($datum)){
              fputs($datei, $datum); } 
              fclose($datei);
              $datei=fopen("datum.txt", "r+");
              $datumaktuell=fgets($datei, 12); 
              echo $datumaktuell; 
              ?>
              Geht's so auch nicht?
              Ist jetzt zwar was umständlich, sehe aber nichts, was scheifgehen könnte Schreibrechte von der Datei setze ich mal auf 777 am Anfang.

              Kommentar


              • #8
                Leider ohne erfolg

                Kommentar


                • #9
                  Keine Fehlerausgabe?
                  Geht denn:
                  $datei=fopen("datum.txt", "a+");
                  fwrite($datei, "hallo");
                  fclose($datei);
                  Wenn das nicht geht und CHMOD auf 777 ist, dann darfst du wohl in keine Dateien schreiben...

                  Kommentar

                  Lädt...
                  X