php - 登录系统sqlserver连接错误

标签 php mysql sql-server

我正在尝试为我的服务器创建一个登录系统。我使用 xampp 在我的本地网站上使用了类似的代码,但现在我正在尝试使用外部服务器。我得到的错误是这个。

Array ( [0] => Array ( [0] => 42000 [SQLSTATE] => 42000 [1] => 102 [code] => 102 [2] => [Microsoft][ODBC Driver 11 for SQL Server][SQL Server]Incorrect syntax near ''. [message] => [Microsoft][ODBC Driver 11 for SQL Server][SQL Server]Incorrect syntax near ''. ) )

我的代码如下:

<?php

session_start();

$inputuser = $_REQUEST['Username'];
$inputpass = $_REQUEST['Password'];

$Server = "MyServer";
$user = "user";
$password = "pass";
$database = "mydb";
$table = "users";

$connectionInfo = array( "Database"=>$database,"UID"=>$user, "PWD"=>$password);

$link = sqlsrv_connect($Server, $connectionInfo);

if ($link === false) {
    echo "Connection failed. \n";
    die(print_r(sqlsrv_errors(), true));
}


$query = "SELECT `Username` FROM `onlinereporting` . `users` WHERE `Username` = '$inputuser'"; 
$querypass = "SELECT `Password` FROM `onlinereporting` . `users` WHERE `Password` ='$inputpass'";

$result = sqlsrv_query($link,$query);
$resultpass = sqlsrv_query($link,$querypass);

if ($result === false) {
    die(print_r(sqlsrv_errors(), true));
}

$row = sqlsrv_fetch_array($result);
$rowpass = sqlsrv_fetch_array($resultpass);

$serveruser = $row["Username"];
$serverpass = $rowpass["Password"];


if ($serveruser And $serverpass) {

    header('Location: index.html');

}

else {  

    header('Location: FailedPage.html');

}
?>

连接工作正常,唯一的问题出现在我尝试检查结果是否为假时。

当我不尝试检查 $result 时,我插入的所有内容都被视为错误的用户名和密码。

欢迎任何帮助或建议。

最佳答案

我相信原因是您使用反引号来引用表名和列名,而在 SQL 服务器中名称是使用 " 引用的。尝试将反引号更改为双引号,即:

$query = "SELECT \"Username\" FROM \"onlinereporting\" . \"users\" WHERE \"Username\" = '$inputuser'"; 

关于php - 登录系统sqlserver连接错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37854625/

相关文章:

javascript - 如何使用 jQuery n json 动态编写 HTML 标签?

php - 在 Laravel 日志中记录 PHP 异常

java - 我有 mysql 连接问题,尽管我使用相同的参数连接到命令行

mysql - 使用 group by 子句检索的记录总和

mysql - 在 ubuntu ARMHF 上使用 mySQL 触发器 WHITOUT sys_exec 调用外部脚本

sql-server - 恢复 Sql Server 数据库后启用代理

php - 将照片发布到 FB 导致需要上传文件错误

javascript - 获取存储在 HTML 元素中的 JSON

sql-server - 如何在 SQL Server 2008 中将图像字段中的 varbinary 值更新为 null?

sql - SQL Server 中的外键 - 使用哪种样式?