sqlsrv_有_行()错误PHP与MSSQL
我的php页面有一个小问题,我就是不明白。我是新来的,我不太明白我的疑问。当我尝试执行我的程序时,错误如下所示 警告:sqlsrv_has_rows()要求参数1为资源,布尔值 给定 这是我的代码:sqlsrv_有_行()错误PHP与MSSQL,php,html,sql-server-2012-express,Php,Html,Sql Server 2012 Express,我的php页面有一个小问题,我就是不明白。我是新来的,我不太明白我的疑问。当我尝试执行我的程序时,错误如下所示 警告:sqlsrv_has_rows()要求参数1为资源,布尔值 给定 这是我的代码: <?php session_start(); try{ include 'connection.php'; $username = $_POST['user']; $password = $_POST['pass']; //check if
<?php
session_start();
try{
include 'connection.php';
$username = $_POST['user'];
$password = $_POST['pass'];
//check if login form is filled
if(empty($_POST['user']) || empty($_POST['pass'])){
echo '<script type="text/javascript">alert("Connection established."); </script>';
}
//search for user and password in the database
$query = "SELECT * FROM [Emkaandb].[dbo].[tbl_clientslogin] WHERE email='{$username}' AND .password='{$password}' AND active='1'";
$result = sqlsrv_query($conn, $query);
if($result == true){
die(print_r(sqlsrv_errors(),true));
}
if(sqlsrv_has_rows($result) !=1){
echo '<script type="text/javascript">alert("Invalid email or password."); </script>';
}else{
while($row = sqlsrv_fetch_array($result)){
$_SESSION['name'] = $row['name'];
}
header("location: Profile.php");
}
}catch (PDOException $e)
{
echo "Error!: " . $e->getMessage() . "
";
die();
}
?>
$result return resource set id?$result return resource set id?以防您不知道。sqlsrv函数与PDO函数无关。因此,在这段代码中捕获PDO异常几乎没有什么用处。事实上,您必须显式地请求错误消息:。一旦你这样做了,你会发现你的SQL开始是无效的。顺便说一句,你的代码似乎允许使用魔法密码”或1=1--
进行通用登录,以防你不知道。sqlsrv函数与PDO函数无关。因此,在这段代码中捕获PDO异常几乎没有什么用处。事实上,您必须显式地请求错误消息:。一旦你这样做了,你就会发现你的SQL开始是无效的。顺便说一句,你的代码似乎允许使用魔法密码”或1=1进行通用登录--
我可以看看($result==true){die(print_r(sqlsrv_errors(),true));}这就是die()?因为$result总是true…我可以看到($result==true){die(print_r(sqlsrv_errors(),true))}这就是die()?因为$result总是正确的。。。