2011-12-08 179 views
0

我試圖傳遞一個id到一個隱藏的表單元素,並有一些語法問題。while循環中的PHP語法錯誤

這是MySQL查詢:

$sql="SELECT id,lastname,firstname FROM drivers_0135199"; 
$result=mysql_query($sql,$con); 
echo mysql_error(); 

這是我在循環,我想回聲出隱藏的表單字段:

while($row=mysql_fetch_array($result)){ 
echo "<input type='hidden' name='idholder' value=".$row["id"]."/>"; 
} 

mysql_error()返回如下:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1 

我知道這個問題是隱藏函數的echo聲明中,我只是不知道正確的w可以在這種情況下管理報價。

在此先感謝您的幫助,我在日誌中找不到一個好的答案。

+3

什麼是你從mysql_error收到錯誤()? – loganfsmyth

+0

你真的認爲MySQL足夠靈巧來檢測PHP錯誤嗎? –

+0

添加了mysql_error()爲您的觀看樂趣。 –

回答

3

你的隱藏字段echo語句的語法是正確的。你說MySQL正在返回錯誤。仔細檢查以下內容:

  1. 確保您連接成功。
  2. 確保在連接後選擇了數據庫。
  3. 仔細檢查您的字段名稱是否正確。
  4. 仔細檢查您的表名是否正確。
  5. 如果您複製/粘貼從您的SQL語句其它試圖重新鍵入,以確保沒有虛假字符作出自己的方式。
+0

現在取得一些進展,謝謝你,從未有過這個問題。 –

0

這樣寫

echo "<input type='hidden' name='idholder' value='$row['id']' />"; 
+2

$ row [id]將不會被正確解析 – TheOx

+0

現在,這將解析您的變量 –

0
while($row=mysql_fetch_array($result)){ 
?> 
<input type="hidden" name="idholder" value="<?php echo $row['id']; ?>" /> 
<?php 
} 
1

擦除包含$sql=...並重復輸入整條生產線;不知何故,一個無形的角色悄悄地進入了文本。您可以使用od -c進行驗證。

1

試試這個對我有用。

下面是下面的代碼:

<?php 
while($fetchregion=mysql_fetch_array($region)) 
{ 
?> 
<input type="hidden" name="region" maxlength="30" size="70" value="<?php echo $fetchregion['REGION'];?>"/> 
<?php 
} 
?>