Змінюй хід війни! Допомагай ЗСУ!

Вопрос по mysql

🟡 17:43 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
Статус: Offline
Реєстрація: 04.07.2008
Повідом.: 675
  • 🟡 17:43 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
  • #1
Вопрос по mysql

Есть запрос:
Select * from `mybase` where id='$id' and name=$name;
Но если у меня переменная $id будет пуста, как можно сделать чтобы тогда выбирало все данные где есть $name?А если $id будет заполнено тогда чтобы выполнялся полный запрос с выборкой того и того?
:)
 
  • 🟡 17:43 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
  • #2
Но если у меня переменная $id будет пуста, как можно сделать чтобы тогда выбирало все данные где есть $name?А если $id будет заполнено тогда чтобы выполнялся полный запрос с выборкой того и того?
:)

посылать разные запросы.
 
  • 🟡 17:43 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
  • #3
Есть запрос:
Select * from `mybase` where id='$id' and name=$name;
Но если у меня переменная $id будет пуста, как можно сделать чтобы тогда выбирало все данные где есть $name?А если $id будет заполнено тогда чтобы выполнялся полный запрос с выборкой того и того?
:)

Код:
$sql = 'select * from mybase where '.(!empty(id) ? 'id='.mysql_real_escape_string($id).' and ' : ' ').'name='.mysql_real_escape_string($name);

Как-то так.
 
  • 🟡 17:43 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
  • #4
почему вы решили, что это вопрос по mysql? что не позволяет проверить $id до выполнения запроса, а потом уже решить, в каком виде и какой запрос выполнять?

блин, уже успели отписать..
 
  • 🟡 17:43 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
  • #5
Ну а если там будет куча таких запросов, мне что везде писать if или тернарный оператор???А с помощью мускула можно как то?Например вместо $id поставить звездочку )))))

Вообще это форма поиска, по одному либо по нескольким либо по всем параметрам...

Вообще это форма поиска, по одному либо по нескольким либо по всем параметрам...
 
Останнє редагування:
  • 🟡 17:43 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
  • #6
даже если бы было можно поставить звездочку, вам нужно было бы сначала определить, нужно её ставить или нет.

можете составить строку запроса из отдельных фильтров по числу ваших полей для поиска. если соответствующая переменная не инициализирована - фильтр по этому полю не включаете. потом объедините эти фильтры через ' AND ' и возможно наступит щастье

БД хорошо работает с данными и пусть работает, не заставляйте её думать о том, что у вас там не так срослось в пхп-коде, что какие-то переменные оказались не инициализированными
 
  • 🟡 17:43 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
  • #7
Ну а если там будет куча таких запросов, мне что везде писать if или тернарный оператор???

запихните его в функцию и не трахайте мозги.
мне бы ваши проблемы.

Код:
$select = $this->select();
foreach ($filters as $name => $val) {
    $select->where("{$name} = :{$name})";
    $select->bind($name, $val);
}
 
Останнє редагування:
  • 🟡 17:43 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
  • #8
даже если бы было можно поставить звездочку, вам нужно было бы сначала определить, нужно её ставить или нет.

можете составить строку запроса из отдельных фильтров по числу ваших полей для поиска. если соответствующая переменная не инициализирована - фильтр по этому полю не включаете. потом объедините эти фильтры через ' AND ' и возможно наступит щастье

БД хорошо работает с данными и пусть работает, не заставляйте её думать о том, что у вас там не так срослось в пхп-коде, что какие-то переменные оказались не инициализированными

Про отдельные фильтры я не подумал.
Спасибо так все работает !:клас::yahoo:

запихните его в функцию и не трахайте мозги.
мне бы ваши проблемы.

Код:
$select = $this->select();
foreach ($filters as $name => $val) {
    $select->where("{$name} = :{$name})";
    $select->bind($name, $val);
}

Там много полей, и значения уже приходят в массиве в соответствующий класс

А кто то работал с Google maps??
 
  • 🟡 17:43 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
  • #9
del
 
Останнє редагування:
  • 🟡 17:43 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
  • #10
  • 🟡 17:43 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
  • #11
есть такая функция join aka implode…
 
  • 🟡 17:43 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
  • #12
также в mysql есть хранимые процедуры sp
 
Назад
Зверху Знизу