2011-12-08 144 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 
} 
?>