Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

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

 

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

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Пара вопросов по навигации

Сообщения:  [1-10]   [11-17] 

 
 автор: ferz   (09.06.2006 в 16:06)   письмо автору
 
   для: Trianon   (09.06.2006 в 15:14)
 

О, спасибо!!! Теперь работает

   
 
 автор: Trianon   (09.06.2006 в 15:14)   письмо автору
 
   для: ferz   (09.06.2006 в 14:42)
 

Значит так:
<? 
$query 
"SELECT 1 AS tab, fresh.* FROM fresh WHERE rubrika='$rub' AND data<=NOW() 
UNION 
SELECT 2 AS tab, articles.* FROM articles WHERE rubrika='
$rub' AND data<=NOW() LIMIT $start$num "
?>

   
 
 автор: ferz   (09.06.2006 в 14:42)   письмо автору
 
   для: Trianon   (09.06.2006 в 12:00)
 

Сделал так, как вы сказали:

<?
$query 
"SELECT 1 AS tab,* FROM fresh WHERE rubrika='$rub' AND data<=NOW() UNION SELECT 2 AS tab,* FROM articles WHERE rubrika='$rub' AND data<=NOW() LIMIT $start$num ";
?>

Не работает. А вообще, че за смысл? Он наверное пытается выбрать значения столбца "1", которого нет... Или я че-то не догоняю

   
 
 автор: Trianon   (09.06.2006 в 12:32)   письмо автору
 
   для: ferz   (09.06.2006 в 12:21)
 

Второму параметру присваиваете номер таблицы. 1 - если из новых, 2 - если из старых.
Запрос переделываете так, чтобы номер таблицы был доступен.
SELECT 1 as tab, * FROM fresh ....
UNION
SELECT 2 as tab, * FROM articles .....

   
 
 автор: ferz   (09.06.2006 в 12:21)   письмо автору
 
   для: cheops   (09.06.2006 в 12:00)
 

Да, id не уникален. А что присваивать второму параметру? Я с помощью запроса выбрал записи из обеих таблиц, и как я узнаю потом, откуда эта запись была взята?

   
 
 автор: Trianon   (09.06.2006 в 12:00)   письмо автору
 
   для: ferz   (09.06.2006 в 11:43)
 

если значения ключей могут пересекаться, придется передавать два параметра. первичный ключ и признак таблицы.

   
 
 автор: cheops   (09.06.2006 в 12:00)   письмо автору
 
   для: ferz   (09.06.2006 в 11:43)
 

А в таблицах id не уникален? Т.е. в каждой таблице id начинается с 1? Если так, то можно передать второй параметр который будет указывать архивная эта таблица или актуальная.

   
 
 автор: ferz   (09.06.2006 в 11:43)   письмо автору
 
   для: ferz   (08.06.2006 в 08:56)
 

У меня тут по ходу появился еще 1 вопрос: Вот вывел я из двух таблиц (старые статьи и новые статьи) данные в таблицу на странице. Мне нужно при нажатии на заголовок статьи вывести эту статью. Я делал так, но только в случае с одной таблицей (передавал значение первичного ключа через GET). А как с двумя? Что передать через GET?

   
 
 автор: ferz   (08.06.2006 в 08:56)   письмо автору
 
   для: cheops   (07.06.2006 в 21:40)
 

Большое спасибо! Теперь все работает

   
 
 автор: cheops   (07.06.2006 в 21:40)   письмо автору
 
   для: ferz   (07.06.2006 в 13:27)
 

Погодите... это копии друг друга? Тогда вам вероятно нужно их объединение, а не пересечение
SELECT * FROM fresh WHERE rubrika='$rub'
UNION
SELECT * FROM articles WHERE rubrika='$rub'

   

Сообщения:  [1-10]   [11-17] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

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