У меня есть таблица, которая имеет столбцы number и balance.
Я хочу вывести данные, хранящиеся в них на страницу.
Почему-то если $result->data_seek($i) указать один раз, то ячейка из столбца balance выведется из той же строки, а ячейка из столбца number выведется уже из следующей.
Я пришел к выводу, что либо data_seek(), либо fetch_assoc() как-то сдвигают указатель на следующую строку. Ведь если взывать data_seek() также перед выводом ячейки из второго столбца, то все будет ОК. Прав ли я, что одна из функций сдвигает указатель на следующую строку? Если нет, то почему тогда так происходит?
<?php
require_once "reg file/login.php";
$connection = new mysqli($hn, $un, $pw, $db);
if ($connection->connect_error) die("Ошибка подключения к БД.");
$query = "SELECT * FROM accounts";
$result = $connection->query($query);
if (!$result) die("Fatal Error");
$rows = $result->num_rows;
for($i = 0; $i < $rows; $i++) {
$result->data_seek($i); //Если написать data_seek() только здесь,
//то ячейка из столбца balance будет выдана из следующей строки.
echo "number: " . htmlspecialchars($result->fetch_assoc()["number"]) . "<br>";
echo "balance: " . htmlspecialchars($result->fetch_assoc()["balance"]) . "<br>";
}
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Как через PHP сравнить текст и ответ от сервера и вывести указанное значение? Нужно, чтобы сервер сравнил переменную с отображаемым Пользуюсь...