При выполнении следующего кода появляются ошибки: Notice: Object of class mysqli_result could not be converted to int on line 10 и Catchable fatal error: Object of class mysqli_result could not be converted to string on line 16 Что код, по идее, должен выполнять: Вывести на страницу некоторое число ссылок (по количеству максимальному id в базе данных, например если Max(id) = 10, то и ссылок соответственно 10), каждая ссылка должна называться title'ом, который соответствует данному id. Код (PHP): <html> <head> <meta charset="utf8"> </head> <?php include_once 'DB.php'; $max = mysqli_query($dblink, "SELECT MAX(id) FROM tmes"); settype($max, "int"); echo gettype($max); { for ($i = 0; $i < $max; $i++ ) { $names = mysqli_query($dblink, "SELECT title FROM tmes WHERE id='$i'"); settype($names, "string"); $page_line .= '<a href="?page=' . $i . '">[' . $names . ']</a>'; } // выводим готовую строку навигации echo $page_line; } ?> </html>
Пытался сконвертировать в ручную и проверить, просто напрягает фраза " Object of class mysqli_result could not be converted to int".
Ожидал, что ошибки исчезнут. В общем, я следующим образом изменил код: Код (PHP): <html> <head> <meta charset="utf8"> </head> <?php include_once 'DB.php'; $max1 = mysqli_query($dblink, "SELECT MAX(id) FROM tmes"); $max = mysqli_fetch_row($max1); { for ($i = 0; $i < $max; $i++ ) { $names1 = mysqli_query($dblink, "SELECT title FROM tmes WHERE id='$i'"); $names = mysqli_fetch_row($names1); $page_line .= '<a href="?page=' . $i . '">[' . $names . ']</a>'; } echo $page_line; } ?> </html> Появились другие ошибки: Notice: Undefined variable: page_line in C:\apache\localhost\www\w.php on line 18 Notice: Array to string conversion in C:\apache\localhost\www\w.php on line 18 Notice: Array to string conversion in C:\apache\localhost\www\w.php on line 18 Notice: Array to string conversion in C:\apache\localhost\www\w.php on line 18 Notice: Array to string conversion in C:\apache\localhost\www\w.php on line 18 Fatal error: Maximum execution time of 30 seconds exceeded in C:\apache\localhost\www\w.php on line 15
на строке 18 ты пытаешься сделать конкатенацию без инициализирования переменной page_line ты хоть читал документацию по PHP? http://phpfaq.ru/debug https://secure.php.net/manual/ru/language.types.array.php Код (PHP): <html> <head> <meta charset="utf8"> </head> <pre> <?php include_once 'DB.php'; $max1 = mysqli_query($dblink, "SELECT MAX(id) FROM tmes"); $max = mysqli_fetch_row($max1); var_export($max); { for ($i = 0; $i < $max; $i++ ) { $names1 = mysqli_query($dblink, "SELECT title FROM tmes WHERE id='$i'"); $names = mysqli_fetch_row($names1); var_export($names); $page_line .= '<a href="?page=' . $i . '">[' . $names . ']</a>'; } echo $page_line; } ?> </html>