2016-07-04 66 views
0

我知道有很多教程我嘗試了幾乎所有的教程,但似乎沒有工作,有一個.txt文件(現在我已轉換它的.csv希望它會工作,但它沒有)。如何從CSV/.TXT文件中讀取某些數據到表格

此文件包含由;分隔的數據,第一行包含某些事物的名稱,其他行是記錄。

我想要的是讀取和顯示正確的工作ID和客戶ID的數據,可以插入到HTML表單中,並在運行後顯示HTML表格,但不幸的是,它不適用於某些原因。下面是代碼:

首先這裏是HTML格式的代碼:

<h2>Device's status </h2> 
        <form id="form" name="form" method="post" action="process.php"> 
         <div class="form-group"> 
          <input type="text" name="customerid" class="form-control" required="required" placeholder="Customer ID"> 
         </div> 
         <div class="form-group"> 
          <input type="text" name="workid" class="form-control" required="required" placeholder="Worksheet ID"> 
         </div> 

         <div class="form-group"> 
          <input type="submit" name="submit" class="btn btn-submit" value="Submit"> 
         </div> 
        </form> 

而現在的process.php:

<?php 
$workid  = @trim(stripslashes($_POST['workid'])); 

$customerid  = @trim(stripslashes($_POST['cusomterid'])); 

$file = file('WEBDATA.csv'); 

foreach($file as $line){ 

    list($workid,$customerid,$devicename,$devicesnumber,$manufactured,$offer,$grosspay;$status)= explode(";",$line); 

} 
?> 



    <table border="1"> 
     <tr> 
      <td> Worksheet ID </td> 
      <td> Customer ID</td> 
      <td> Device Name</td> 
      <td> Serial Number</td> 
      <td> Manufacturer</td> 
      <td> Expected Price </td> 
      <td> Gross Final Price </td> 
      <td> Repairing status </td> 
      <tr> 
         <td><?php echo "$workid" ?></td> 
         <td><?php echo "$customerid" ?> </td> 
         <td><?php echo "$devicename" ?> </td> 
         <td><?php echo "$devicesnumber" ?> </td> 
         <td><?php echo "$manufactured" ?> </td> 
         <td><?php echo "$offer" ?> </td> 
         <td><?php echo "$grosspay" ?> </td> 
         <td><?php echo "$status" ?> </td> 

問題是什麼?如何使這項工作?很簡單:用戶在這個HTML表單中輸入2個ids,它應該顯示與.csv文件中這兩個id有關的數據。但它不起作用。

+0

這是一個錯字'$ grosspay;'<<<這應該是一個逗號,並檢查錯誤就會拋出你'解析錯誤:語法錯誤,意外「;」,希望「」或「) 「'。錯別字是無關緊要的。 –

+0

謝謝弗雷德,我把所有的東西都翻譯成英文,讓所有人都對這個錯字感到抱歉。 – Steve

+0

只需將'$製造,$ offer,$ grosspay; $ status)'改爲'$製造,$ offer,$ grosspay,$狀態)',這對你很有用。如果你沒有,請記得用''關閉你的桌子。它不在你的發佈代碼中。 –

回答

0

我不知道你們沒有注意到,或者我不完全瞭解這個問題,但是當我做出這些改變時,它會順利運行並給出數據表。

<?php 
$workid  = @trim(stripslashes($_POST['workid'])); 
$customerid  = @trim(stripslashes($_POST['cusomterid'])); 
$file = file('WEBDATA.csv'); 
?> 
<table border="1"> 
    <tr> 
     <td> Worksheet ID </td> 
     <td> Customer ID</td> 
     <td> Device Name</td> 
     <td> Serial Number</td> 
     <td> Manufacturer</td> 
     <td> Expected Price </td> 
     <td> Gross Final Price </td> 
     <td> Repairing status </td> 
    <tr> 
<?php 
foreach($file as $line){ 
    list($workid,$customerid,$devicename,$devicesnumber,$manufactured,$offer,$grosspay,$status)= explode(";",$line); 
?> 
     <td><?php echo "$workid" ?></td> 
     <td><?php echo "$customerid" ?> </td> 
     <td><?php echo "$devicename" ?> </td> 
     <td><?php echo "$devicesnumber" ?> </td> 
     <td><?php echo "$manufactured" ?> </td> 
     <td><?php echo "$offer" ?> </td> 
     <td><?php echo "$grosspay" ?> </td> 
     <td><?php echo "$status" ?> </td>    
<?php } ?> 
</table> 
+0

有一個錯字附近customerid在烏爾代碼的開頭,但我試過了,並仍然運行,然後沒有錯誤消息只是一個空的表:(測試3網頁瀏覽器,但仍然,:/ – Steve