Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: LIKE в выражение

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (2): [1] 2 »   

> Без описания
romanov
Отправлено: 20 Декабря, 2011 - 17:20:28
Post Id


Гость


Покинул форум
Сообщений всего: 112
Дата рег-ции: Нояб. 2011  


Помог: 0 раз(а)




Очень буду благодарен тому кто подскажет как правильно синтаксически передать в выражение LIKE переменную из пост запроса , вот оно выражение: agents_user.name LIKE '%$_POST[name]%' - таким образом работает неправильно.
 
 Top
Bio man
Отправлено: 20 Декабря, 2011 - 17:24:56
Post Id


Постоянный участник


Покинул форум
Сообщений всего: 2751
Дата рег-ции: Июль 2010  
Откуда: Даугавпилс, Латвия


Помог: 52 раз(а)




$name = mysql_real_escape_string($_POST[name]);
LIKE '%$name%'
 
 Top
OrmaJever Модератор
Отправлено: 20 Декабря, 2011 - 17:29:31
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




Ну и разумеется сам запрос должен быть в двойных кавычках.


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
Okula
Отправлено: 20 Декабря, 2011 - 17:30:54
Post Id



Участник


Покинул форум
Сообщений всего: 1389
Дата рег-ции: Окт. 2010  


Помог: 42 раз(а)




P.S. Если хочешь чтобы не сбивался шаблон по которому осуществляется поиск в БД, то тогда экранируй ещё символы % и _
 
 Top
romanov
Отправлено: 20 Декабря, 2011 - 17:38:41
Post Id


Гость


Покинул форум
Сообщений всего: 112
Дата рег-ции: Нояб. 2011  


Помог: 0 раз(а)




как вы написали не работает, вот если передать конкретную строку результаты есть agents_user.name LIKE '%Юд%', но мне надо из массива POST вот sql код с вашими исправлениями:
CODE (SQL):
скопировать код в буфер обмена
  1. $name = $db->real_escape_string($_POST["name"]);
  2.  
  3. $result = $db->query("
  4.  
  5. SELECT agents_user.name
  6. FROM
  7.  agents_user
  8. WHERE
  9.  agents_user.name  LIKE '%$name%'
  10.  
  11.  LIMIT 5  
  12.  "
  13. );
 
 Top
Bio man
Отправлено: 20 Декабря, 2011 - 17:44:02
Post Id


Постоянный участник


Покинул форум
Сообщений всего: 2751
Дата рег-ции: Июль 2010  
Откуда: Даугавпилс, Латвия


Помог: 52 раз(а)




а так?
CODE (SQL):
скопировать код в буфер обмена
  1. SELECT `agents_user`.`name`
  2. FROM
  3.  `agents_user`
  4. WHERE
  5.  `agents_user`.`name`  LIKE '%$name%'
  6.  
  7.  LIMIT 5
 
 Top
romanov
Отправлено: 20 Декабря, 2011 - 17:46:30
Post Id


Гость


Покинул форум
Сообщений всего: 112
Дата рег-ции: Нояб. 2011  


Помог: 0 раз(а)




так тоже не работает
 
 Top
Bio man
Отправлено: 20 Декабря, 2011 - 17:48:59
Post Id


Постоянный участник


Покинул форум
Сообщений всего: 2751
Дата рег-ции: Июль 2010  
Откуда: Даугавпилс, Латвия


Помог: 52 раз(а)




запрос хоть выполняется? проверь на ошибки
 
 Top
romanov
Отправлено: 20 Декабря, 2011 - 17:56:35
Post Id


Гость


Покинул форум
Сообщений всего: 112
Дата рег-ции: Нояб. 2011  


Помог: 0 раз(а)




запрос выполняется, сервер возвращает пусто, ошибок sql вроде нет. Как правильно проверить на SQL ошибки в этом запросе
 
 Top
Bio man
Отправлено: 20 Декабря, 2011 - 17:58:15
Post Id


Постоянный участник


Покинул форум
Сообщений всего: 2751
Дата рег-ции: Июль 2010  
Откуда: Даугавпилс, Латвия


Помог: 52 раз(а)




mysql_error() типо так $res = mysql_query($sql) or die(mysql_error())
 
 Top
romanov
Отправлено: 20 Декабря, 2011 - 17:59:55
Post Id


Гость


Покинул форум
Сообщений всего: 112
Дата рег-ции: Нояб. 2011  


Помог: 0 раз(а)




Вот так написал ошибок нет, результата тоже нет:

CODE (SQL):
скопировать код в буфер обмена
  1. $name = $db->real_escape_string($_POST["name"]);
  2.  
  3. $result = $db->query("
  4.    SELECT `agents_user`.`name`
  5.    FROM
  6.     `agents_user`
  7.    WHERE
  8.     `agents_user`.`name`  LIKE '%$name%'
  9.    
  10.     LIMIT 5
  11.  "
  12. )OR die ($db->error() );
 
 Top
Bio man
Отправлено: 20 Декабря, 2011 - 18:02:15
Post Id


Постоянный участник


Покинул форум
Сообщений всего: 2751
Дата рег-ции: Июль 2010  
Откуда: Даугавпилс, Латвия


Помог: 52 раз(а)




и для полного букета вынеси запрос в переменную и выведи ее. типо так echo $sql
(Добавление)
и убедись, что в таблице есть соответствующие записи
(Добавление)
и попробуй экранировать, типо так LIKE '%{$name}%'
 
 Top
romanov
Отправлено: 20 Декабря, 2011 - 18:04:36
Post Id


Гость


Покинул форум
Сообщений всего: 112
Дата рег-ции: Нояб. 2011  


Помог: 0 раз(а)




Catchable fatal error: Object of class mysqli_result could not be converted to string
(Добавление)
Если написать такой запрос `agents_user`.`name` LIKE '%Юд%' то записи из базы выдаются
 
 Top
Bio man
Отправлено: 20 Декабря, 2011 - 18:08:08
Post Id


Постоянный участник


Покинул форум
Сообщений всего: 2751
Дата рег-ции: Июль 2010  
Откуда: Даугавпилс, Латвия


Помог: 52 раз(а)




romanov, в следствии чего ошибка? в mysqli что бы получить текст ошибки нужно прописать так $db->error, error это свойство

(Отредактировано автором: 20 Декабря, 2011 - 18:09:08)

 
 Top
romanov
Отправлено: 20 Декабря, 2011 - 18:09:29
Post Id


Гость


Покинул форум
Сообщений всего: 112
Дата рег-ции: Нояб. 2011  


Помог: 0 раз(а)




ошибок sql нет, я так прописал с самого начала
 
 Top
Страниц (2): [1] 2 »
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Работа с СУБД »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB