Подскажите, пожалуйста, на простом примере, как вывести список зарегистрированных пользователей из БД, используя поиск по двум критериям, по имени и городу?
require_once('db.php');
$user = R::load('users');
$name;
$city;
Ваш index.php файл будет выглядеть так:
<form action="/test.php" method="POST">
<table width="100" height="50">
<tr>
<td>Поиск:</td>
<td>
<input type="search" name="search" placeholder="Искать здесь...">
<input type="text" name="city" placeholder="Город">
</td>
</tr>
<tr>
<td></td>
<td><button type="submit" name="do_search">Поиск</button></td>
</tr>
</table>
</form>
Изменяйте его на ваше усмотрение, поле город добавил быстро, не проверяя, поэтому может съехать.
Файл test.php:
<?php
require_once('db.php');
if (!isset($_POST['do_search'])) {
exit("Internal server error."); // Если не нажата кнопка поиска, то принудительно останавливаем выполнение скрипта
}
if(!$keywords = $_POST['search'] ?: null) {
exit("Keyword is empty."); // Если поле пустое, то останавливаем скрипт
}
$sql = "name LIKE ?"; // Инициализируем sql запрос согласно правилам RedBean
$bind = [$keywords]; // Биндим параметр $keywords - поисковые слова
if($city = $_POST['city'] ?: null) {
$sql .= " AND city = ?"; // Если есть поле город и оно не пустое, то добавляем к строке
$bind[] = $city; // Добавляем еще один бинд
}
$users = R::find('users', $sql, $bind); // Достаем всех юзеров по условию
var_dump($users); // Здесь вывод юзеров, можете сделать на свое усмотрение, как хотите
Полезные ссылки:
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
вывожу через singlephp записи по категориям
Когда я пытаюсь получить код страницы другого сайта с помощью php функции file_get_contents, я ничего не получаюКак я понял это хостинг блокирует