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

Форум MySQL

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

 

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

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

тема: Написание запроса
 
 автор: Zdraff   (29.12.2009 в 18:42)   письмо автору
 
 

Здравствуйте, помогите, пожалуйста, составить запрос.
$k = '/parts/';
Мне нужно извлечь из базы все ряды, ячейка "name" которых включают в себя подстроку - начало переменной $k.
Т.е., в данном случае подходят для извлечения ряды, где в ячейке name содержаться:
/
/parts/
/part
и не подходят
/parts/bla/
parts/

Заранее спасибо.

  Ответить  
 
 автор: cheops   (29.12.2009 в 19:45)   письмо автору
 
   для: Zdraff   (29.12.2009 в 18:42)
 

Вместо parts может быть любое другое слово? Если да, то оно может содержать / ?

  Ответить  
 
 автор: Zdraff   (29.12.2009 в 19:50)   письмо автору
 
   для: cheops   (29.12.2009 в 19:45)
 

Да, там может быть любое слово. Оно всегда будет начинаться с "/", это REQUEST_URL. Там может быть и /parts/blabla, и /mod/bla/ и т.д.

  Ответить  
 
 автор: Zdraff   (30.12.2009 в 00:25)   письмо автору
 
   для: Zdraff   (29.12.2009 в 18:42)
 

неужели ни у кого никаких идей?

  Ответить  
 
 автор: Loki   (30.12.2009 в 12:52)   письмо автору
 
   для: Zdraff   (29.12.2009 в 18:42)
 

SELECT * FROM table WHERE name LIKE '/parts/%'

  Ответить  
 
 автор: Zdraff   (30.12.2009 в 17:12)   письмо автору
 
   для: Loki   (30.12.2009 в 12:52)
 

И выберутся те ряды, в которых значение в ячейке начинается на /parts/, а мне надо наоборот, в чем все и дело.

  Ответить  
 
 автор: Loki   (30.12.2009 в 17:22)   письмо автору
 
   для: Zdraff   (30.12.2009 в 17:12)
 

SELECT * FROM table WHERE '/parts/' LIKE CONCAT(name, '%')

  Ответить  
 
 автор: Zdraff   (30.12.2009 в 17:59)   письмо автору
 
   для: Loki   (30.12.2009 в 17:22)
 

Это юмор такой? :)
Поясняю, какой скрипт у меня:

В базе таблица:
id | page_adr | page_text
====================
1 | / | blabla1
2 | /cat1/ | blabla2
3 | /cat3/ | blabla3
Берется переменная $_SERVER['REQUEST_URL'], например, она равна /cat1/cat2/doc.html.
Мне надо показывать текст из ячейки page_text на всех страницах, $_SERVER['REQUEST_URL'] которых начинается с текста в ячейке page_adr. Т.е. в вышеуказанном примере подходят строки с id 1 и 2 и не подходит строка 3.

  Ответить  
 
 автор: Zdraff   (30.12.2009 в 18:02)   письмо автору
 
   для: Loki   (30.12.2009 в 17:22)
 

Прошу прощения, тупанул, не знал о существовании такой "перевернутой" конструкции. Спасибо огромное, это то, что мне нужно. С наступающим!

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

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