2017-12-31 125 views
-3

テキストファイルから読み込んだ結果を表示するPHPコードがあります。このコードでは、検索する単語が入力され、システムはファイルを読み取り、指定された行番号ファイル名を指定します。PHPを使用してテーブルに結果を表示する方法

これらの結果を、整形式の表またはフォームに表示したいとします。

可能であれば、列はファイル名でなければならず、行には行番号が含まれていなければなりません。

コード:

<?php 


if(isset($_POST["search"])) 
    { 
     $search =$_POST['name']; 
     echo "the word $search exist: <br><br>"; 
     foreach(glob($_SERVER['DOCUMENT_ROOT']."/readfiletest/*.txt") as $txts) 
     { 
      $line = 1; 
      $myFileLink = fopen($txts, 'r'); 
      while(!feof($myFileLink)) 
      { 
      $myFileContents = fgets($myFileLink); 
      if(preg_match_all('/('.preg_quote($search,'/').')/i', $myFileContents, $matches)) 
      { 

        foreach($matches[1] as $match) 
        { 


         echo "line [$line] file "; 
        } 
        echo basename ($txts) . "<br>".PHP_EOL; 

      } 
      ++$line; 
      } 
     fclose($myFileLink); 
     } 
    } 
?> 


<html> 
    <head> 
    </head> 
    <meta http-equiv="Content-Language" content="ar-sa"> 
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 
    <style> 
      #form { 
     background: -webkit-linear-gradient(bottom, #CCCCCC, #EEEEEE 175px); 
     background: -moz-linear-gradient(bottom, #CCCCCC, #EEEEEE 175px); 
     background: linear-gradient(bottom, #CCCCCC, #EEEEEE 175px); 
     margin: auto; 
     width: 200px; 
     height: 200px; 
     position: absolute; 


     font-family: Tahoma, Geneva, sans-serif; 
     font-size: 14px; 
     font-style: italic; 
     line-height: 24px; 
     font-weight: bold; 
     color: #09C; 
     text-decoration: none; 
     border-radius: 10px; 
     padding: 10px; 
     border: 1px solid #999; 
     border: inset 1px solid #333; 
     -webkit-box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.3); 
     -moz-box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.3); 
     box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.3); 
     } 

    </style 
    <body> 
    <div id = "form"> 
     <form action="index.php" method="post"> 
      <h1 align =center > Search Form </h1> 
      <p>enter your string <input type ="text" id = "idName" name="name" /></p> 
      <p align =center ><input type ="Submit" name ="search" value= "Search" /></p> 
     </form> 
    </div> 
    </body> 
</html> 
+0

あなたの問題は何ですか? – user78403

+0

私の問題は、テーブルに結果を表示する必要があるということです –

答えて

0

あなたはforeachループの前にこれを書き、だから、エコー

を使用してHTMLタグを書くことができます。 foreachループの内側

echo "<table>" 

は、foreachループ

echo "</table>" 

後にテーブルタグを閉じてその

echo "<tr><td>".$line. "</td></tr> 

ようにする必要があり、それはこれだけです。

関連する問題