Warning: mysqli_fetch_array() expects parameter 1 to be mysqli_result, object given in on line
2 Answers
Присоединяюсь к выше написавшим и дополняю от себя: У вас там, А - неверные ковычки в запросе. Б - Нет проверки на результат запроса.
function is_user_set($username){
global $db;
if (isset($username)) {
$username = mysqli_real_escape_string($db,$username);
$result = mysqli_query($db,"SELECT COUNT(id) AS id FROM `users` WHERE name='{$username}' LIMIT 1");
return boolval(mysqli_num_rows($result) != 0);
}
return false;
}
- 644
- 4
- 6
-
-
-
-
function get_udata($username){ global $db; $res = array(); $username = mysqli_real_escape_string($db,$username); $result = mysqli_query($db,"SELECT * FROM
usersWHERE name=$username"); $arr = mysqli_fetch_assoc($db,$result); if(isset($arr['json'])){ $res = json_decode($arr['json'], true); } return $res; } – Type Aug 13 '20 at 13:13 -
вы читаете текст ошибки? написано - ожидает один параметр, даете 2. Что тут непонятного-то? – Максим Степанов Aug 13 '20 at 13:14
-
в 10 местах уже написали - не нужно пихать $db где попало - вы продолжаете. – Максим Степанов Aug 13 '20 at 13:15
-
Все почистил, 1 ошибка только Warning mysqli_fetch_assoc() expects parameter 1 to be mysqli_result, bool given in 40
function get_udata($username){ global $db; $res = array(); $username = mysqli_real_escape_string($db,$username); $result = mysqli_query($db,"SELECT * FROM
– Type Aug 13 '20 at 13:29usersWHERE name={$username}"); $arr = mysqli_fetch_assoc($result); if(isset($arr['json'])){ $res = json_decode($arr['json'], true); } return $res; } -
-
вы кавычки ` замените на обычные одинарные ' там, где значение, а не имя поля – Максим Степанов Aug 13 '20 at 14:02
Ссылка на подключенную базу данных нужна только в запросе. В mysqli_fetch_array - отвечает за извлечение данных. Подробнее тут mysqli_fetch_array.
function is_user_set($username){
global $db;
$username = mysqli_real_escape_string($db,$username);
$result = mysqli_query($db,"SELECT * FROM `users` WHERE name=`$username` LIMIT 1");
return $result && (bool)mysqli_fetch_array($result)
}
Кстати, если Вам нужно узнать, есть ли такой пользователь или нет, достаточно использовать COUNT(*) и mysql_fetch_row.
function is_user_set($username){
global $db;
$username = mysqli_real_escape_string($db,$username);
$result = mysqli_query($db,"SELECT COUNT(*) FROM `users` WHERE name=`$username` LIMIT 1");
if($result === FALSE){
// Error msg;
return null;
}
$result = mysqli_fetch_row($result);
return $result[0]>0;
}
- 8,059
-
Warning mysqli_fetch_array() expects parameter 1 to be mysqli_result, object given in17 Warning: mysqli_real_escape_string() expects exactly 2 parameters, 1 given in 5
Warning: mysqli_real_escape_string() expects exactly 2 parameters, 1 given in 6 Warning: mysqli_real_escape_string() expects exactly 2 parameters, 1 given in 7 Warning: mysqli_real_escape_string() expects exactly 2 parameters, 1 given in 8
Warning: mysqli_real_escape_string() expects exactly 2 parameters, 1 given in 9 Не удалось зарегать – Type Aug 13 '20 at 12:55 -
function make_user($name, $lastname,$username,$chat_id,$time){ global $db; $name = mysqli_real_escape_string($name); 5строка $lastname = mysqli_real_escape_string($lastname); 6 строка $username = mysqli_real_escape_string($username); 7строка $chat_id = mysqli_real_escape_string($chat_id); 8строка $date = mysqli_real_escape_string($time); 9 строка $query = "INSERT INTO
users(name,lastname,username,chat_id,time) VALUES ('{$name}','{$lastname}','{$username}','{$chat_id}','{$date}')"; mysqli_query($db,$query) or die("Не удалось зарегать"); } – Type Aug 13 '20 at 12:55 -
-
Соединение с MySQL установлено! Информация о сервере: localhost via TCP/IP
Warning: mysqli_fetch_row() expects exactly 1 parameter, 2 given in 16
Warning: Use of undefined constant result - assumed 'result' (this will throw an Error in a future version of PHP) 17
Warning: Use of undefined constant result - assumed 'result' (this will throw an Error in a future version of PHP) in on line
Warning: mysqli_real_escape_string() expects exactly 2 parameters, 1 given 6 Не удалось зарегать – Type Aug 13 '20 at 12:59 -
-
-
mysqli_fetch_array($db,$result)ставитеdb? напишите просто:mysqli_fetch_array($result)– Максим Степанов Aug 13 '20 at 12:42