mysqli

php MySQL ООП веб-программирование MySQLi

Привет прокаченным, хочу разобраться с mysqli, раньше я делал так:
$db_connect = mysql_connect('localhost', 'username', 'password') or die(mysql_error());
$db_select = mysql_select_db('books', $db_connect)or die(mysql_error());
$result = mysql_query("select * from books");
echo "<table border='1'>";
while($row = mysql_fetch_array($result)){
echo("<tr><td>{$row['title']}</td><td>{$row['author']}</td><td>{$row['isbn']}</td><td>{$row['price']}</td></tr>");
}
echo "</table>";

Как тоже самое получить bcgjkmpez mysqli c ооп подходом и без него?

В одной известной книге по веб-разработке я я нашел такой способ:

@ $db = new mysqli('localhost', 'bookorama', 'bookorama123', 'books');
$errn = mysqli_connect_errno();
if (mysqli_connect_errno()) {
echo 'Ошибка: Не удалось установить соединение' .
' с базой данных. Повторите попытку позже.';
exit;
}

$query = "select * from books where ".$searchtype." like '%".$searchterm."%'";
$result = $db->query($query);
$num_results = $result->num_rows;
echo "<p>Найдено книг: ".$num_results."</p>";

for ($i = 0; $i < $num_results; $i++) {
$row = $result->fetch_assoc();
echo "<p><strong>".($i+1).". Название: ";
echo htmlspecialchars (stripslashes($row['title']));
echo "</strong><br />Автор: ";
echo stripslashes($row['author']);
echo "<br />ISBN: ";
echo stripslashes($row['isbn']);
echo "<br />Цена: ";
echo stripslashes($row['price']);
echo "</p>";
}

Но как все это оформить используя WHILE ???
Спасибо!

Примечание:
используя WHILE и ...fetch_array???
Я пробовал $result->fetch_array() - не получилось =(

Примечание:
waonr (Vladimir Kovalchuk) - убейся аппстену, я знаю как "запилить" мне интересно как другие "запиливают";

Примечание:
$db = new mysqli('localhost', 'bookorama', 'bookorama123', 'books')or die(mysqli_connect_errno());
$result = $db->query("select * from books");
$num_results = $result->num_rows;
echo "<table border='1'>";
for ($i = 0; $i < $num_results; $i++) {
$row = $result->fetch_assoc();
echo("<tr><td>{$row['title']}</td><td>{$row['author']}</td><td>{$row['isbn']}</td><td>{$row['price']}</td></tr>");
}
echo "</table>";

Как заменить for на while пока не разобралси

Примечание:
Разобрался, просто раьше я использовал fetch_array по старинке

$db = new mysqli('localhost', 'bookorama', 'bookorama123', 'books')or die(mysqli_connect_errno());
$result = $db->query("select * from books");
$num_results = $result->num_rows;
echo "<table border='1'>";
while($row = $result->fetch_assoc()) {
echo("<tr><td>{$row['title']}</td><td>{$row['author']}</td><td>{$row['isbn']}</td><td>{$row['price']}</td></tr>");
}
echo "</table>";
Ответы:
while($result->fetch_assoc()), и никакой $num_results не нужен


12 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.