RedBeanPHP и PHP: поиск и вывод данных

73
21 июня 2021, 04:30

Подскажите, пожалуйста, на простом примере, как вывести список зарегистрированных пользователей из БД, используя поиск по двум критериям, по имени и городу?

require_once('db.php');
$user = R::load('users');
$name;
$city;
Answer 1

Ваш 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);   // Здесь вывод юзеров, можете сделать на свое усмотрение, как хотите

Полезные ссылки:

  • R::find()
  • Оператор ?:
  • exit()
  • Binding params
READ ALSO
Вывод записей в single.php за исключением самой записи

Вывод записей в single.php за исключением самой записи

вывожу через singlephp записи по категориям

112
Как исправить ошибку php?

Как исправить ошибку php?

Появилась такая ошибка:

92
Как получить значение со стороннего сайта на хостинге

Как получить значение со стороннего сайта на хостинге

Когда я пытаюсь получить код страницы другого сайта с помощью php функции file_get_contents, я ничего не получаюКак я понял это хостинг блокирует

102
Куда захостить приложение на php?

Куда захостить приложение на php?

Есть приложение, работающее на PHP

76