为什么我收到此错误"错误:查询为空"

时间:2015-03-30 12:30:02

标签: php mysql forms sql-update

我正在尝试使用表单通过php更新我的SQL数据库,但我一直收到错误"错误:查询为空"。

<?php
$sql = "";
$con = mysql_connect("*******","*******");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}

mysql_select_db("*******", $con);
mysql_query($sql, $con);


if (isset($_POST['STUDENT_FNAME'], $_POST['STUDENT_SNAME'],
$_POST['STUDENTNO'] ))
{ 

$sql="UPDATE STUDENT SET STUDENT_FNAME=('$_POST[STUDENT_FNAME]'),
STUDENT_SNAME=('$_POST[STUDENT_SNAME]')
WHERE STUDENTNO=
('$_POST[STUDENTNO]')";
}

if (!mysql_query($sql,$con))
{
die('Error: ' . mysql_error());
}
echo "1 record updated";

mysql_close($con);
?>

它也不会更新我的桌子而且我不知道我做错了什么。所有帮助将不胜感激。你可能会告诉我,我是新手!

2 个答案:

答案 0 :(得分:0)

在数据库选择后删除mysql_query($sql, $con)查询执行,因为$sql为空,

还将更新sql执行放在 IF条件中,因为如果它不是真的再次$ sql将为空并且你将再次得到同样的错误,...

<?php
$sql = "";
$con = mysql_connect("*******","*******");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}

mysql_select_db("*******", $con);
// mysql_query($sql, $con); // <-- remove this

if (isset($_POST['STUDENT_FNAME'], $_POST['STUDENT_SNAME'],
$_POST['STUDENTNO'] ))
{ 

$sql="UPDATE STUDENT SET STUDENT_FNAME=('$_POST[STUDENT_FNAME]'),
STUDENT_SNAME=('$_POST[STUDENT_SNAME]')
WHERE STUDENTNO=
('$_POST[STUDENTNO]')";

   if (!mysql_query($sql,$con))
   {
    die('Error: ' . mysql_error());
   }
   echo "1 record updated";
}
mysql_close($con);
?>

答案 1 :(得分:0)

您的代码首先出现错误,您正在调用mysql_query($ sql,$ con);在$ sql变量中没有任何查询,你的$ sql为空白“”

<?php
$sql = "";
$con = mysql_connect("*******","*******");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}

mysql_select_db("*******", $con);


if (isset($_POST['STUDENT_FNAME'], $_POST['STUDENT_SNAME'],
$_POST['STUDENTNO'] ))
{ 

$sql="UPDATE STUDENT SET STUDENT_FNAME=('$_POST[STUDENT_FNAME]'),
STUDENT_SNAME=('$_POST[STUDENT_SNAME]')
WHERE STUDENTNO=
('$_POST[STUDENTNO]')";
}

if (!mysql_query($sql,$con))
{
die('Error: ' . mysql_error());
}
echo "1 record updated";

mysql_close($con);
?>