0
Как преобразовать эту строку кода в запрос, который будет принят MSSQL Server 2012?Запрос Codeigniter на запрос mssql
Im получаю эту ошибку вызов функции члена NUM_ROWS() на логическое значение в C: \ XAMPP \ HTDOCS \ пись \ приложения \ модели \ main.php Это происходит, когда им пытаются превратить его в запрос для MSSQL
function login($username, $password) {
$this -> db -> select();
$this -> db -> from('tbl_user');
$this -> db -> JOIN('tbl_assign_role', 'tbl_user.u_id = tbl_assign_role.tar_owner_id');
$this -> db -> where('tbl_user.u_uname = ' . "'" . htmlspecialchars($username) . "'");
$this -> db -> where('tbl_user.u_pword = ' . "'" . MD5($password) . "'");
$this -> db -> where('tbl_user.is_active = 1');
$this -> db -> limit(1);
$query = $this -> db -> get();
if($query -> num_rows() == 1)
{
return $query->result();
}
else
{
return false;
}
}
изменить его в этом
$query = "SELECT * FROM tbl_user
LEFT JOIN tbl_assign_role ON tbl_user.u_id = tbl_assign_role.tar_owner_id
WHERE tbl_user.u_name = '".$username."'
AND tbl_user.u_pword = '".MD5($password)."'
AND tbl_user.is_active = 1
FETCH NEXT 1 ROWS ONLY
";
После того, как я изменился, стал ошибкой.
Теперь он работает. То, что я сделал это
$query = "SELECT TOP 1 * FROM tbl_user
JOIN tbl_assign_role ON tbl_user.u_id = tbl_assign_role.tar_owner_id
WHERE tbl_user.u_uname = '".htmlspecialchars($username)."'
AND tbl_user.u_pword = '".MD5($password)."'
AND tbl_user.is_active = 1";
$query = $this->db->query($query);
Я не знаю, CodeIgniter вообще. Но метод 'num_rows' не требует каких-либо аргументов? –
В codeigniter ему не нужен аргумент. – user3911182
Вы хотите преобразовать этот запрос в MySql из метода codeigniter? –