2015-05-11 75 views
0

我有我的代碼在php中的錯誤問題。任何人都可以幫助我糾正它!PHP語法錯誤,意外的'<'

<?php $query_tbl = "SELECT transaksi.id_transaksi, pelanggan.nama FROM transaksi, pelanggan ". 
      "WHERE transaksi.id_pelanggan = pelanggan.id_pelanggan ORDER BY id_transaksi"; 

     $list_tbl = mysqli_query($dbc, $query_tbl) 
      or die('Error select table'); 

     while($row = mysqli_fetch_array($list_tbl)) 
     { 
      echo '<tr>'; 
      echo '<td>' . $row['id_transaksi'] . '</td>'; 
      echo '<td>' . $row['nama'] . '</td>'; 
      <form method="post" action="pengiriman-input.php"> 
       <input type="hidden" name="id" value="<?php echo $row['id_transaksi']; ?>" /> 
       <input type="submit" value="Kirim" /> 
      </form> 
      echo '</tr>'; 
     };?> 

在Chrome中我得到這個通知符:

Parse error: syntax error, unexpected '<' in C:\xampp\htdocs\delivery\pengiriman.php on line 33.

我不知道什麼是錯的,因爲我是新用PHP。

而且順便說一句管線33

<form method="post" action="pengiriman-input.php"> 
+0

如果您向我們展示第33行的源代碼(您在點擊錯誤時看到的那個代碼) – Peanut

+0

是第33行 –

回答

0

你不能把HTML直接到PHP

<?php $query_tbl = "SELECT transaksi.id_transaksi, pelanggan.nama FROM transaksi, pelanggan ". 
     "WHERE transaksi.id_pelanggan = pelanggan.id_pelanggan ORDER BY id_transaksi"; 

    $list_tbl = mysqli_query($dbc, $query_tbl) 
     or die('Error select table'); 

    while($row = mysqli_fetch_array($list_tbl)) 
    { 
     echo '<tr>'; 
     echo '<td>' . $row['id_transaksi'] . '</td>'; 
     echo '<td>' . $row['nama'] . '</td>'; 
?> <!-- here ends the PHP --> 
     <form method="post" action="pengiriman-input.php"> 
      <input type="hidden" name="id" value="<?php echo $row['id_transaksi']; ?>" /> 
      <input type="submit" value="Kirim" /> 
     </form> 
<?php // here begin PHP again 
     echo '</tr>'; 
    };?> 
+0

我試了一下,但我現在得到了這個:「解析錯誤:語法錯誤,意外的T_STRING,期待','或';'在第34行中的C:\ xampp \ htdocs \ delivery \ pengiriman.php中「第34行: /> –

+0

btw我想在我的表的每一行創建編輯按鈕。 –

1

有一些錯誤了Syntex,而把你的表單標籤附近PHP之間HTML

<?php $query_tbl = "SELECT `transaksi.id_transaksi`, `pelanggan.nama` FROM `transaksi`, `pelanggan` WHERE 
`transaksi.id_pelanggan` = `pelanggan.id_pelanggan` ORDER BY `id_transaksi`"; 

     $list_tbl = mysqli_query($dbc, $query_tbl) 
      or die('Error select table'); 

     while($row = mysqli_fetch_array($list_tbl)) 
     { 
      echo '<tr>'; 
      echo '<td>' . $row['id_transaksi'] . '</td>'; 
      echo '<td>' . $row['nama'] . '</td>';?> 
      <form method="post" action="pengiriman-input.php"> 
       <input type="hidden" name="id" value="<?php echo $row['id_transaksi']; ?>" /> 
       <input type="submit" value="Kirim" /> 
      </form> 
      <?php echo '</tr>'; 
     };?> 
0

你需要結束php然後再次啓動它。試試這個:

<?php $query_tbl = "SELECT transaksi.id_transaksi, pelanggan.nama FROM transaksi, pelanggan ". 
      "WHERE transaksi.id_pelanggan = pelanggan.id_pelanggan ORDER BY id_transaksi"; 

    $list_tbl = mysqli_query($dbc, $query_tbl) 
     or die('Error select table'); 

    while($row = mysqli_fetch_array($list_tbl)) 
    { 
     echo '<tr>'; 
     echo '<td>' . $row['id_transaksi'] . '</td>'; 
     echo '<td>' . $row['nama'] . '</td>'; 
     ?> 
     <form method="post" action="pengiriman-input.php"> 
      <input type="hidden" name="id" value="<?php echo $row['id_transaksi']; ?>" /> 
      <input type="submit" value="Kirim" /> 
     </form> 
    <?php 
     echo '</tr>'; 
    };?> 
1

試試這個更簡潔明快代碼

<?php 
    $query_tbl = "SELECT transaksi.id_transaksi, pelanggan.nama FROM transaksi, pelanggan ". "WHERE transaksi.id_pelanggan = pelanggan.id_pelanggan ORDER BY id_transaksi"; 
    $list_tbl = mysqli_query($dbc, $query_tbl) or die('Error select table'); 
?> 


<?php while($row = mysqli_fetch_array($list_tbl)): ?> 
    <tr> 
     <td><?php echo $row['id_transaksi']; ?></td> 
     <td><?php echo $row['nama']; ?></td> 
     <td> 
      <form method="post" action="pengiriman-input.php"> 
       <input type="hidden" name="id" value="<?php echo $row['id_transaksi']; ?>" /> 
       <input type="submit" value="Kirim" /> 
      </form> 
     </td> 
    </tr> 
<?php endwhile; ?> 
+0

你可以使用'while():' - 'endwhile;'語法在香草PHP?還是隻有當你使用模板引擎? – Mathlight

+0

我試試這個。它的工作原理。但按鈕放在桌子上方。 –

+0

@MahfudMuhammad,那是因爲它不在'td'標籤中。把它放在它們之間,你應該沒事 – Mathlight

0

在上面的代碼中,你在1號線開一個PHP標籤,並認爲在最後一行關閉它的。在這兩個標籤之間,您不能像創建表單一樣在PHP文件中編寫用於創建表單的html腳本。

它將被視爲一個PHP腳本而不是HTML腳本和PHP編譯器不理解HTML標籤。

將表單標記創建爲php字符串變量,並按照上面的行中的方式回顯它。