PHP und Dateien einlesen

Alles was nirgendwo anders hinpasst.
Benutzeravatar
tuning_by_dani

Re: PHP und Dateien einlesen

Beitrag von tuning_by_dani »

ganz dumme n00b frage ^^
wie kann ich das in den code hier einarbeiten ?

Code: Alles auswählen

<?php
       // Überprüfung der Länge des Strings, wenn kleiner wie 2 dann Fehlermeldung
         if (strlen($_GET['s']) < 2)
       {
       echo "Bitte geben Sie mehr als 2 Zeichen ein!";
     }
     // Wenn Stringlänge OK ...
     else
     {
        // Ausgabe der Überschrift für die Treffer  
        //echo "Treffer mit <b>".$search."</b> :

";
      
        // dateinamen der html dateien einlesen
        foreach (glob('*.htm') as $document) 
        {       
          
          
          
        $array = array();
        $anzahl = array();
        $content = strip_tags(file_get_contents($document));
        
        /*
        $content2 = file_get_contents($document);
        preg_match ("",$content2);
        */
        
        $array = explode(" ",$content);
        for($y=0;$y<count($array);$y++) {
        if ( preg_match("/$search/i",$array[$y]) ) {
        array_push($anzahl,$y);
        }
        }
        
        if(!empty($anzahl) ) {
        $result=1;
        for($y=0;$y<count($anzahl);$y++) {
        echo "<li><a href='viewer.php?file=".$document."&search=".$search."&count=".$counter."#anker".$y."' target=\"MAIN_FRAME\">".$document."</a></li> ";
        }
        // nicht zusammengehörende themen splitten
        echo "
";
        
        }   
        }
        
        
           // Wenn $result Variable ungleich 1, dann Fehlermeldung ausgeben
           if ($result !== 1)
           {
            echo "
Es wurden keine mit Ihrer Suchanfrage - <b>".$search."</b> - übereinstimmenden Dokumente gefunden.";
           }
      }
?>
es soll also $document als namen genommen werden und nicht der name fest drin stehn. bin grade am probieren. aber sagt immer aufruf einer nicht definierten funktion? also zz hab ich immer öfter so kleine fehler :(
Benutzeravatar
COSMo
Beiträge: 968
Registriert: Mo 19. Mai 2003, 14:19
Kontaktdaten:

Re: PHP und Dateien einlesen

Beitrag von COSMo »

Probiers mal so ;)

Code: Alles auswählen

<?php

  function getHTMLTitle($filename)
  {
    $f = fopen($filename, 'rb');
    $data = fread ($f, filesize ($filename));
    $title_start = strpos(strtoupper($data), '<TITLE>');
    if ($title_start)
    {
      $title_start += 7;
      $title_length = strpos(strtoupper($data), '</TITLE>');
      if ($title_length)
      {
         $title_length -= $title_start;
         return substr($data, $title_start, $title_length);
      }
      else return 'Titel unbekannt';
    }
    else return 'Titel unbekannt';
  }

  // Überprüfung der Länge des Strings, wenn kleiner wie 2 dann Fehlermeldung
  if (strlen($_GET['s']) < 2)
  {
    echo "Bitte geben Sie mehr als 2 Zeichen ein!";
  }
  // Wenn Stringlänge OK ...
  else
  {
    // Ausgabe der Überschrift für die Treffer  
    //echo "Treffer mit <b>".$search."</b> :

";
      
    // dateinamen der html dateien einlesen
    foreach (glob('*.htm') as $document) 
    {       
      $array = array();
      $anzahl = array();
      
      $title = getHTMLTitle($document);
      $content = strip_tags(file_get_contents($document));
 
      /*
      $content2 = file_get_contents($document);
      preg_match ("",$content2);
      */
      
      $array = explode(" ",$content);
      for($y=0;$y<count($array);$y++)
      {
        if ( preg_match("/$search/i",$array[$y]) )
        {
          array_push($anzahl,$y);
        }
      }
        
      if(!empty($anzahl) )
      {
        $result=1;
        for($y=0;$y<count($anzahl);$y++)
        {
          echo "<li><a href='viewer.php?file=".$document."&search=".$search."&count=".$counter."#anker".$y."' target=\"MAIN_FRAME\">".$title."</a></li> ";
        }
        // nicht zusammengehörende themen splitten
        echo "
";
      }   
    }
    // Wenn $result Variable ungleich 1, dann Fehlermeldung ausgeben
    if ($result !== 1)
    {
      echo "
Es wurden keine mit Ihrer Suchanfrage - <b>".$search."</b> - übereinstimmenden Dokumente gefunden.";
    }
  }
?>
Benutzeravatar
tuning_by_dani

Re: PHP und Dateien einlesen

Beitrag von tuning_by_dani »

COSMo hat geschrieben:Probiers mal so ;)

Code: Alles auswählen

<?php

  function getHTMLTitle($filename)
  {
    $f = fopen($filename, 'rb');
    $data = fread ($f, filesize ($filename));
    $title_start = strpos(strtoupper($data), '<TITLE>');
    if ($title_start)
    {
      $title_start += 7;
      $title_length = strpos(strtoupper($data), '</TITLE>');
      if ($title_length)
      {
         $title_length -= $title_start;
         return substr($data, $title_start, $title_length);
      }
      else return 'Titel unbekannt';
    }
    else return 'Titel unbekannt';
  }

  // Überprüfung der Länge des Strings, wenn kleiner wie 2 dann Fehlermeldung
  if (strlen($_GET['s']) < 2)
  {
    echo "Bitte geben Sie mehr als 2 Zeichen ein!";
  }
  // Wenn Stringlänge OK ...
  else
  {
    // Ausgabe der Überschrift für die Treffer  
    //echo "Treffer mit <b>".$search."</b> :

";
      
    // dateinamen der html dateien einlesen
    foreach (glob('*.htm') as $document) 
    {       
      $array = array();
      $anzahl = array();
      
      $title = getHTMLTitle($document);
      $content = strip_tags(file_get_contents($document));
 
      /*
      $content2 = file_get_contents($document);
      preg_match ("",$content2);
      */
      
      $array = explode(" ",$content);
      for($y=0;$y<count($array);$y++)
      {
        if ( preg_match("/$search/i",$array[$y]) )
        {
          array_push($anzahl,$y);
        }
      }
        
      if(!empty($anzahl) )
      {
        $result=1;
        for($y=0;$y<count($anzahl);$y++)
        {
          echo "<li><a href='viewer.php?file=".$document."&search=".$search."&count=".$counter."#anker".$y."' target=\"MAIN_FRAME\">".$title."</a></li> ";
        }
        // nicht zusammengehörende themen splitten
        echo "
";
      }   
    }
    // Wenn $result Variable ungleich 1, dann Fehlermeldung ausgeben
    if ($result !== 1)
    {
      echo "
Es wurden keine mit Ihrer Suchanfrage - <b>".$search."</b> - übereinstimmenden Dokumente gefunden.";
    }
  }
?>


wollt grade schon schreiben vergiss es. habs auch grade gedunden. ich danke dir aufjedenfall vielmals dafür !!!!
du bsit mein held :notworthy: :notworthy: :notworthy: :notworthy:
fehler war ich hatte die function in der foreach drinne :blushing:


gruß dani
Antworten