1

我是 PHP 新手,不确定 php 中 mysql 的语法。我正在尝试借助以下 SELECT 语句从 data_table 中检查用户名,但似乎遇到了语法错误。我真的很感激在这件事上的任何帮助。

$myquery = sprintf("SELECT `Username` FROM `dataTable` WHERE `Username` = \\%s", mysqli->real_escape_string($loginID));

 $userNameCheck = mysqli->query($myquery); 

 if($userNameCheck)
 {
    echo "query succeeded";
 }
4

3 回答 3

3

跳过 sprintf。

  $myquery = "SELECT `Username` FROM `dataTable` WHERE `Username` = '".mysqli->real_escape_string($loginID)."'";
于 2012-11-27T16:00:26.657 回答
1

看到您在 mysqli 上缺少 $ 符号,不知道这是这里还是您的代码中的错字。

$myquery = "SELECT `Username` FROM `dataTable` WHERE `Username` = '".$mysqli->real_escape_string($loginID)."'";
$userNameCheck = $mysqli->query($myquery);

然后测试@Ray 写的内容

于 2012-11-27T16:03:38.160 回答
0

您仍然需要引号,即使您使用...不寻常的查询构建方法。另外,我不确定双反斜杠有什么帮助。

$myquery = sprintf("..... `Username` = '%s'",mysqli...);
于 2012-11-27T16:01:24.943 回答