我正在Windows Server上使用SQL(MSSQL)Server数据库。我的数据库连接工作正常。 我正在尝试使用选择查询获取数据。 这是我的代码,
db_functions.php
public function login($username, $password)
{
$sqlString = "SELECT CompId , BUCode , Role from
PRIME_APPUSR WHERE UserName = ? AND PassWord = ?";
$params = array($username, $password);
$stmt = sqlsrv_query($this->conn, $sqlString, $params);
if ($stmt === false) {
die(print_r(sqlsrv_errors(), true));
}
$rows = sqlsrv_has_rows($stmt);
if ($rows === true) {
while ($row = sqlsrv_fetch($stmt)) {
$response["CompId"] = sqlsrv_get_field($stmt, 0);
$response["BUCode"] = sqlsrv_get_field($stmt, 1);
$response["Role"] = sqlsrv_get_field($stmt, 2)
}
return $response;
} else {
return false;
}
}
login.php
<?php
require_once 'db_functions.php';
$db = new db_functions();
if (isset($_POST['USERNAME']) && isset($_POST['PASSWORD'])) {
$USERNAME = $_POST['USERNAME'];
$PASSWORD = $_POST['PASSWORD'];
$result1 = $db->login($USERNAME, $PASSWORD);
if (!$result1) {
$arr["response"] = "Error.";
} else {
$arr["response"] = $result1;
}
echo json_encode($arr);
} else {
$arr["response"] = "Invalid Parameters";
echo json_encode($arr);
}
?>
我的问题是,从此函数返回的结果是错误的。 有人可以解决这个问题吗??
答案 0 :(得分:0)
$ sqlString =“ SELECT CompId,BUCode,角色来自 PRIME_APPUSR WHERE用户名=吗? AND PassWord =?“;
我认为您需要在BUCode和Role之间使用','