bestimmte zeile aus gleicher datei auslesen

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • bestimmte zeile aus gleicher datei auslesen

    Ich möchte einen String aus der 5. Zeile der gerade aufgerufenen Seite per regularer Ausdrücke extrahieren, um ihn dann in der selben Seite als Wert eines versteckten Formularfeldes zur nächsten Datei weitergeben zu können.
    Klappt mich nachfolgendem Code auch gut.

    PHP Code:
    <?php

        $fp 
    fopen ("meister_im_gastgewerbe.php""r");
        
    $line_num 4;
        
    $line_cnt 0;
        while (
    $line fgets($fp1024)) {
            if (
    $line_cnt == $line_num) {
                
    /*echo $line;*/
                
    break;
            }
            
    $line_cnt++;
        }
            
    eregi('<headline.*text=[\'"]?([^\'"]*)[\'"]?.*>'$line$match);
        
    ?>
    Problem:
    Der Name der Datei in fopen (in der auch dieser Code drin steht) ist immer unterschiedlich. Also müsste sich die Datei selbst aufrufen können. Aber mit $PHP_SELF erhalte ich Fehler :

    für fopen --> no such file
    und entsprechend bei
    fgets --> Supplied argument is not a valid File-Handle resource


    Wie komme ich an die 5. Zeile in der gleichen Datei ohne bei fopen den konkreten Dateinamen angeben zu müssen?

  • #2
    hast du $PHP_SELF mal ausgegeben?

    Comment


    • #3
      Du meinst z.B. mit print() ?

      Warning: fopen("1", "r") - No such file or directory in /usr/local/etc/httpd/htdocs/afz/wDeutsch/hotelschule/bildungsangebote/meister_im_gastgewerbe.php

      Das ist die Meldung, wenn an Stelle des Dateinamens print($PHP_SELF) steht.

      Comment


      • #4
        HUHU!!!! Grundlagen???

        was macht print? ne ausgabe? Richtig!

        Du solltest das print mal machen um zu überprüfen ob in der variable überhaupt was drin steht.

        Comment


        • #5
          print ($PHP_SELF);

          gibt:

          wDeutsch/hotelschule/bildungsangebote/meister_im_gastgewerbe.php

          Comment


          • #6
            meister_im_gastgewerbe.php != wDeutsch/hotelschule/bildungsangebote/meister_im_gastgewerbe.php

            oder?

            Somit haben wir die quelle des Problems.

            guck dir mal filename() an.

            Comment


            • #7
              konnte zu filename() absolut nichts finden. gibt's das als fkt. ?

              hab's nun so und funzt:

              PHP Code:
                  <?php
                  $filename 
              basename($_SERVER['PHP_SELF']); 
                  
              $fp fopen ($filename"r")
                      or die (
              "Kann Datei nicht öffnen!");
                  
              $line_num 4;
                  
              $line_cnt 0;
                  while (
              $line fgets($fp1024)) {
                      if (
              $line_cnt == $line_num) {
                          echo 
              $line;
                          break;
                      }
                      
              $line_cnt++;
                  }

                  
              ?>
              @Tobiaz: Danke für die Hilfe!

              Comment


              • #8
                Jo, sorry! filename gibbet natürlich nicht. Du hast basename() völlig richtig eingesetzt.

                Comment

                Working...
                X