php поиск по базе и вывод результата php

интернет программирование php MySQL базы данных

есть форма поиска.
есть база.
информация из формы обрабатывается так:
$named = $_POST['name'];
$result = mysql_query("SELECT * FROM turn WHERE name LIKE '%$named%'");
while ($line = mysql_fetch_array($result, MYSQL_NUM)) {....

смысл, с которым я писал этот код- это выдернуть из базы все записи, которые содержат приходящее из формы слово.
проблема в том, что из трех записей- выводит 2.
Добавляю еще запись сожую- выводит 3 записи, НО в этих двух случаях НЕ ВЫВОДИТ запись, которая добавлена самая первая и имеет наименьший id.

Примечание:
ссылка на весь файл обработчик:
http://rghost.ru/52807918

Примечание:
Юрий, тестирование записей происходило исключительно по записям:
price1, price2, price3, price4
латиница.

в форму маленькими буквами вводил слово price
выводило из базы только price2, price3, price4

Примечание:
Вот для примера картинка:
http://rghost.ru/private/52976536/151738506b89ba4b27a4c705eb4e89d6

вводя слово price- выдает 5 записей с ID 12,13,14,15,25
вводя слово 13- выдает записи с ID 14, 15

куда делся id 11 в первом случае и id 13 во втором - я не понимаю...

Примечание:
alezhal, пробовал ваш пример. выводит те же записи.
пробовал менять параметр мускул-буз- то же самое.

Примечание:
Юрий, сейчас попробую 5.6.10 мускл и php 5.4, было пхп 5.3 и мускл 5.1

Примечание:
Все тлен. Тоже самое. Вместо 6 выдает как и было- 5 записей.

Примечание:
Залил на хостинг - тоже самое.

Примечание:
alezhal, Отображает строки 0 - 5 ( 6 всего, Запрос занял 0.0011 сек.)

Примечание:
alezhal, в базе то выдает то, что нужно. Но почему уже при пхп обработке- выдает только последние 5? вот файл-обработчик.

http://rghost.ru/53124856

Примечание:
в мускле выдает столько, сколько нужно- там всего 6 записей, содержащих слово прайс.
но когда этот запрос происходит в пхп- выдает только 5 последних, вместо 6 имеющихся.
Ответы:
1) За "SELECT * FROM" бьют программистов по рукам
2) проверь совпадение с учётом регистра букв и отсутствие смешения похожих символов в разной раскладке (русская и латинская с, а, о и т.п.)
Сам в PHP новичок, но на мой взгляд, в результате обращения к базе вы должны получить ВСЕ записи с указанным именем ($named)
Попробуйте в mysql_fetch_array() использовать параметр по-умолчанию MYSQL_BOTH
А какая версия php и mysql? Я так вижу, что тут просто % не работает с нулевым количеством символов, хотя по документации должно. Возможно багнутый мускул.
Выполните свой запрос в MySQL (phpMyAdmin) - если результирующий набор не будет ожидаемым, то будете дальше копать. - SELECT * FROM turn WHERE name  LIKE '%price%'
6 строк вывел запрос, а должен был сколько? Если не вывел какой-то определенный, то выполните запрос именно с таким именем. SELECT * FROM turn WHERE name  = 'здесь имя'
Я не профи, но сделал бы так:


11 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.