mysql — Medoo php sql — изменить поисковый запрос

я использую «medoo» -php / mysql-class (http://www.medoo.in) для моего последнего проекта. Мне нравится тихий и простой способ работы с моими SQL-компонентами.

Но я задавался вопросом, возможно ли изменить поисковый термин в соответствии с опцией в форме ввода-выбора. Допустим, у нас есть опция поискапользователь по имени«мы бы пошли с:

$data = $database->select("account", [
"user_name",
"user_id",
"phone",
"email",
"age"], [
"user_name" => $_POST['user_name']]);

Хорошо пока. Теперь у нас есть опция поискапользователь по идентификатору«. Все остальное остается таким же. Поэтому мне нужно только

["user_name" => $_POST['user_name']]);

быть как

["user_id" => $_POST['user_id']]);

Есть ли способ изменить это, не написав снова целое утверждение?

Это всего лишь пример. Кроме того, для моего проекта мне нужно будет изменить другие параметры запроса, такие как обновить, чтобы вставить Одер разные варианты соединения. Но на данный момент я в порядке с ответом на это.

Во всяком случае, что вы думаете о Medoo-Class. Есть какие-нибудь классные альтернативы для меня? По сути, я знаю, как работать с SQL-запросами, но получение данных в массиве всегда сводит меня с ума. Так что я хотел бы получить вещи быстрее и проще с классом.

Огромное спасибо за вашу помощь!
Бест, Локс

0

Решение

Вы можете просто изменить массив $ where перед выполнением запроса следующим образом:

if ($type == 'id')
{
$where = ["user_id" => $_POST['user_id']];
}

if ($type == 'user_name')
{
$where = ["user_name" => $_POST['user_name']];
}

$data = $database->select("account",
[
"user_name",
"user_id",
"phone",
"email",
"age"],
$where
);
1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]