检查与MariaDB服务器对应的手册

时间:2017-02-14 14:41:36

标签: php mysql

$epic=$_REQUEST['epic'];
$sql = "UPDATE std_id SET epic_no='$epic'' WHERE v_fname='$name' AND v_lname='$lname' AND gen='$gen' AND age= '$age' AND as_id='$as_id'";

在此代码的第二行gettig此错误:

  

检查与MariaDB服务器版本对应的手册,以便在...附近使用正确的语法。

1 个答案:

答案 0 :(得分:1)

首先,请缩进您的代码。

$epic = $_REQUEST['epic'];
$sql = "UPDATE std_id SET epic_no='$epic'' WHERE v_fname='$name' AND v_lname='$lname' AND gen='$gen' AND age= '$age' AND as_id='$as_id'";

第一个问题:您没有转义变量($ epic和其他)。至少使用addslashes()

第二个问题:$epic附近有两个单独的api,因此请更正您的查询:

UPDATE std_id SET epic_no='$epic' WHERE v_fname='$name' AND v_lname='$lname' AND gen='$gen' AND age= '$age' AND as_id='$as_id'

第三次问题:请不要使用$_REQUEST。它太通用了。使用$_GET$_POST

第四个问题:表名和列名。这不是一个真正的问题,但它们是如此奇怪和令人困惑。