当我运行我的代码时总是得到这个错误
SQL语法中有错误;查看与MySQL服务器版本对应的手册,了解在第1行"leave"附近使用的正确语法
下面是我的编码部分
<?php
$result = mysql_query("select * from 'leave'");
if ($result == FALSE)
{
die(mysql_error());
}
while($row = mysql_fetch_assoc($result))
{
?>
<tr>
<td><a href = "app_status.php? id = <?php echo $row["Leave_ID"];?>" target = "_blank"></a>Leave ID</td>
<td><?php echo $row["Emp_ID"];?></td>
<td><?php echo $row["Date_Apply"];?></td>
<td><?php echo $row["Leave_Type"];?></td>
<td><?php echo $row["Leave_Start"];?></td>
<td><?php echo $row["Leave_End"];?></td>
<td><?php echo $row["Status"];?></td>
</tr>
<?php
}
?>
5条答案
按热度按时间ipakzgxi1#
不要使用单引号
你可以试试
或使用'键
c7rzv4ha2#
表名使用反记号':
dgsult0t3#
可能的答案:
1)任何非数字值都需要用引号括起来。
2)您的输入数据在使用之前也应该被清除/转义。您当前对SQL注入开放。
7rfyedvj4#
5ktev3wc5#
在我的例子
"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 'order (id INT NOT NULL AUTO_INCREMENT,PRIMARY KEY (id),
中,我得到了这个错误。我认为我们不能使用“order”作为表名(我认为它是一个关键字)。我不得不使用“order_and_contracts "。