第1行的SQL语法错误?

时间:2014-01-07 17:56:49

标签: php mysql

通常我知道修复语法错误。这个让我难过。我提交了我的代码和这个手杖......

  

您的SQL语法有错误;检查与MySQL服务器版本对应的手册,以便在第1行“”“”“”“附近使用正确的语法

这让我难过的原因是因为如果你看到这里......

<?php
session_start();
$message="";
if(count($_POST)>0) {
$conn = mysql_connect(""");
mysql_select_db(""""",$conn);
$result = mysql_query("SELECT * FROM users WHERE 'userName='" . $_POST["userName"] . "' and password = '". $_POST["""""]."'");
if($result === FALSE) {
    die(mysql_error());
    }

$row  = mysql_fetch_array($result);
if(is_array($row)) {
$_SESSION["user_id"] = $row[user_id];
$_SESSION["user_name"] = $row[user_name];
} else {
$message = "Invalid Username or Password!";
}
}
if(isset($_SESSION["user_id"])) {
header("Location:user_dashboard.php");
}
?>

我的语法错误在第一行,但第一行只是<?php,我不认为这是语法错误,... 我知道它必须在代码的其他地方,但在第一行说是真的让我失望。

有人可以帮我找到语法错​​误吗?

注意:当您检查我的代码“”“”“ =私人信息时,并不是必需的信息。 另请注意:当我尝试删除'符号时,它会说

  

'where子句'中的未知列'密码'

3 个答案:

答案 0 :(得分:1)

第一行是指sql语句的第一行。在您的情况下,它引用此代码:

$result = mysql_query("SELECT * FROM users ".
    "WHERE 'userName='" . $_POST["userName"] . "' ".
    "and password = '". $_POST["""""]."'");

我认为错误是由于userName之前的'引起的。只需拿走它再试一次。

答案 1 :(得分:1)

试试这个

$result = mysql_query("SELECT * FROM users ". "WHERE 'userName='" . $_POST["userName"] . "' ". "and password = '". $_POST["""""]."'");

答案 2 :(得分:0)

试试这个,您已在userName列附近添加了'

 $result = mysql_query("SELECT * FROM users WHERE userName='" . $_POST["userName"] . "' and password = '". $_POST["password"]."'");
                                       ...........^