Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Поиск по базе, как вывести?
 
 автор: JESS   (05.11.2008 в 01:31)   письмо автору
 
 

Привет все! я делаю поиск, и что то странно как то выводиться информация при поиске....
Если вещ записана в базу с большой буквы, то при поиске если написать меленькую то ничего не находит, надо что бы первые буквы софпадали, большие или маленькие..

вот база WHERE name LIKE '%{$_POST['search']}%'

  Ответить  
 
 автор: BinLaden   (05.11.2008 в 01:39)   письмо автору
 
   для: JESS   (05.11.2008 в 01:31)
 

В какой кодировке поисковое слово (значение $_POST['search'])? Какая кодировка настроена при соединении (SET NAMES ...)? Какая кодировка указана у поля name (у таблицы, базы)?

Скорее всего из-за несостыковки кодировок MySQL считает поисковые слова в неверной кодировке и соотвественно не различает правильно строчные и заглавные буквы.

  Ответить  
 
 автор: JESS   (07.11.2008 в 02:40)   письмо автору
 
   для: BinLaden   (05.11.2008 в 01:39)
 

Вот таблица, текст ищется на латинице))) ничего не могу сделать)))



CREATE TABLE IF NOT EXISTS `vA_products` (
  `productID` int(11) NOT NULL auto_increment,
  `categoryID` int(11) default NULL,
  `name` varchar(11) collate utf8_bin default NULL,
  `cat2` int(11) default NULL,
  `description` text collate utf8_bin,
  `customers_rating` varchar(11) collate utf8_bin default NULL,
  `Price` int(11) default NULL,
  `picture` text collate utf8_bin,
  `in_stock` int(11) default NULL,
  `thumbnail` varchar(11) collate utf8_bin default NULL,
  `customer_votes` text collate utf8_bin,
  `enabled` int(11) default NULL,
  `brief_description` text collate utf8_bin,
  `list_price` float default NULL,
  `product_code` text collate utf8_bin,
  `old_price` text collate utf8_bin,
  `extra2` varchar(11) collate utf8_bin default NULL,
  `extra3` text collate utf8_bin,
  `extra4` text collate utf8_bin,
  `extra5` text collate utf8_bin,
  PRIMARY KEY  (`productID`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=162 ;

  Ответить  
 
 автор: lorenberg   (07.11.2008 в 02:49)   письмо автору
 
   для: JESS   (07.11.2008 в 02:40)
 

Страница, с которой ведёте поиск в какой кодировке?

  Ответить  
 
 автор: JESS   (07.11.2008 в 03:11)   письмо автору
 
   для: lorenberg   (07.11.2008 в 02:49)
 

если я правельно понимаю то вот в такой: windows-1252,
и поиск проходит по `name` varchar(11) collate utf8_bin default NULL,

  Ответить  
 
 автор: sl1p   (07.11.2008 в 04:14)   письмо автору
 
   для: JESS   (07.11.2008 в 03:11)
 

после коннекта к базе:

mysql_query("SET NAMES cp1251");

  Ответить  
 
 автор: JESS   (07.11.2008 в 10:17)   письмо автору
 
   для: sl1p   (07.11.2008 в 04:14)
 

что то не помогает, никакой реакции..)))

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования