У меня возникли проблемы с возвратом числа строк. Я хочу, чтобы мой код проверял, существует ли имя пользователя, и если оно возвращается, то возвращаем ошибку. То, как я это делаю, это то, что num_rows возвращает число, большее 0. Я еще не реализовал эту часть, я просто пытаюсь заставить ее вернуть число строк прямо сейчас. Вот мой текущий код:MSQLI, имеющий проблемы с num_rows
$hostname = ''; //SET SERVER/HOSTNAME
$dbusername = ''; //SET DATABASE USERNAME
$dbname = ''; //SET DATABASE NAME
$dbpassword = ''; //SET DATABASE USERNAME
$link = mysqli_connect($hostname, $dbusername, $dbpassword, $dbname);
if (!$link)
{
$systemerror = 'Connect Error' . mysqli_connect_errno() . mysqli_connect_error();
$error = "there has been an error";
}
$sql = "SELECT username FROM affiliates WHERE username = $username";
$result = mysqli_query($link, $sql, MYSQLI_USE_RESULT);
if (!result)
{
$error = "There was an error with our system. Please contact All Choice Dental or wait a few minutes. Thank you.";
goto error;
}
$row_cnt = $result->num_rows;
echo $row_cnt;
У меня даже нет нуля для num_rows, поэтому что-то должно быть неправильно. Я знаю, что могу подключиться к базе данных, потому что я могу вставлять строки с использованием того же соединения.
У вас есть error_reporting enabled? Не видя, что «эхо» подразумевает, что у вас может быть более ранняя фатальная ошибка. Прежде всего я отмечаю, что '$ username', вероятно, должно быть одноколейным в SQL. Возможно, вы не используете PHP 5.3 и не имеете 'goto'. –
В любом случае, 'error_reporting (E_ALL); ini_set ('display_errors', 1); '... всегда делайте это в процессе разработки. –