私のすべてのAPIで同じ問題が発生します.. echo sqlsrv_query();レスポンスResource id#3を返す。 また、返されたデータが空であるかどうかを調べる方法はありません。 リソースID#3の応答が原因で、クエリデータが邪魔になる可能性があります。 助けてください。MSSqlは、echo sqlsrv_query()でリソースID#3の応答のみを返します。
以下は私のコードです。
あなたがそのsqlsrv_query
リターンを見つけることができます
read the documentation
<?php
// the connection part of the code.......
$connectionInfo = array(
"UID"=>$uid,"PWD"=>$pwd,"Database"=>$databaseName,"CharacterSet" => "UTF-8");
/* Connect using SQL Server Authentication. */
$conn = sqlsrv_connect($serverName, $connectionInfo);
if($conn === false) {
die(print_r(sqlsrv_errors(), true));
}
$username= $_REQUEST['username'];
$password= $_REQUEST['password'];
if($username && $password)
{
$query = "SELECT NAME,LOGINID,PASSWORD FROM SMS_ACCESS WHERE LOGINID = '$username' AND PASSWORD = '$password'";
/* Execute the query. */
$stmt = sqlsrv_query($conn,$query);
$json = array();
echo $stmt;
if ($stmt === false)
{
$json["status_code"] = "203";
$json["status"] = "Error in execution";
//echo "Error in statement execution.\n";
die(print_r(sqlsrv_errors(), true));
echo json_encode(['data'=>[$json]]);
}
else
{
while($row = sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC))
{
$json["name"] = $row['0'];
}
//echo json_encode(['status_code' => "200",'status' => "success",'data'=>[$json],'Msg' => "Login Successful !!"]);
}
}
else {
$json["status_code"] = "203";
$json["status"] = "Parameter Missing !!";
die(print_r(sqlsrv_errors(), true));
echo json_encode(['data'=>[$json]]);
}
/* Free statement and connection resources. */
sqlsrv_free_stmt($stmt);
sqlsrv_close($conn);
?>
あなたは、プレーンテキストとしてパスワードを格納していますか? –
pwdは暗号化されていません。 – Shivani
@MattGibson私は何かを忘れていることを知っていました! – miken32