Альтернатива foreach ()

Я пытаюсь найти альтернативу моему методу извлечения всех данных в функции для конкретного пользователя, где их сеанс равен их имени пользователя.

Он работал нормально, пока я не переехал на хостинг и теперь выдает ошибки. Следующий код — это то, что я использовал на своем старом хостинге, когда он работал нормально:

$username = 'Benza';
$query = "SELECT id, username, password, email, ip, lastonline, rank, register_time FROM users_ WHERE username = '$username'";
$result = $con->query($query);
return $result->fetch_all();

Это говорит: Call to a member function fetch_all() on boolean,

И когда я пытаюсь что-то вроде:

$username = 'Admin';
$query = "SELECT id, username, password, email, ip, lastonline, rank,
register_time FROM users_ WHERE username = '$username'";
$result = $con->query($query);
$data = mysqli_fetch_all($result,MYSQLI_ASSOC);
return $data;

я получил
Warning: mysqli_fetch_all() expects parameter 1 to be mysqli_result, boolean given
Warning: Invalid argument supplied for foreach()

Я вызываю свои функции foreach, как показано ниже (потому что приведенный выше код находится в функции того же класса):

$users = $this->grabUserInfos($con);
foreach ($users as $user) {
$username = $user[1];
$email = $user[3];
}

-1

Решение

Кажется, проблема в том, что часть, где выполняется запрос, больше не работает:

$result = $con->query($query);

Тот факт, что у вас логическое значение в $ result, означает, что с функцией запроса что-то пошло не так. Из-за этого функции fetch_all и mysqli_fetch_all () могут работать некорректно.

Вы должны взглянуть на эту часть и выяснить, почему запрос не выполняется.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]