Forum. MyNuke.ru
Forum. MyNuke.ruСообщения за сегодняПерсональные сообщения

Навигация  
Вернуться   Forum. MyNuke.ru > Учимся > PHP&MySQL
Ник
Пароль
Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Alexander-V-Sh вне форума      Старый 1 Sql запрос для вывода данных листом и циклом #1  
Аватара для Alexander-V-Sh
Alexander-V-Sh
Бывалый
Регистрация: 19.04.2006
Сообщения: 352


Пожаловаться на это сообщениеОтветить с цитированием

Посмотреть профиль Отправить персональное сообщение для Alexander-V-Sh Посетить домашнюю страницу Alexander-V-Sh Найти все сообщения от Alexander-V-Sh Добавить Alexander-V-Sh в список друзей  
03.08.2006, 17:31

Имеется запрос в базу для вывода статей:
$result = $db->sql_query("SELECT * FROM ляля WHERE topic='$topic' ORDER BY $orderby limit $offset, $storynum");

мне нужно перед циклом:
while ($row = $db->sql_fetchrow($result)) {
узнать значение 2х данных, а именно мета (чтобы вставить в metakey) и название топика (чтобы вставить в титл на странице и в блок)
Эти данные должны вставляються перед хедером и в цикле быть не могут.

Но если я вывожу данные после запроса например так:
$row = $db->sql_fetchrow($result);
$metakey = filter($row['topicname'], "nohtml");
$topictext = filter($row['topictext'], "nohtml");
Или list(........$metakey, $topictext)= $db->sql_fetchrow($result);

То в цикле не хватает одного поля, которое забрал лист. Т.е. если всего 5 записей, 1 запись идет на лист, а 4 на цикл. А нужно в цикле использовать все.

Можно ли это сделать 1 запросом? Не хочется просто делать лишний запрос, ради того чтобы вставить метакей и титл.

Soniks вне форума      Старый #2  
Soniks
Администратор
Регистрация: 16.01.2005
Сообщения: 4,814


Пожаловаться на это сообщениеОтветить с цитированием

Посмотреть профиль Отправить персональное сообщение для Soniks Посетить домашнюю страницу Soniks Найти все сообщения от Soniks Добавить Soniks в список друзей  
04.08.2006, 13:45

Alexander-V-Sh в мета тег нужно только первый запрос вывести или все??

можно сделать сл-им образом прогнать циклом всю выборку, но не выводить ее на экран, а загнать в массив какой-нибудь, затем произвести выборку от туда сколько нужно раз.
 
"Если бы вам удалось надавать под зад человеку, виноватому в большинстве ваших неприятностей - вы бы неделю не смогли сидеть".


Alexander-V-Sh вне форума      Старый #3  
Аватара для Alexander-V-Sh
Alexander-V-Sh
Бывалый
Регистрация: 19.04.2006
Сообщения: 352


Пожаловаться на это сообщениеОтветить с цитированием

Посмотреть профиль Отправить персональное сообщение для Alexander-V-Sh Посетить домашнюю страницу Alexander-V-Sh Найти все сообщения от Alexander-V-Sh Добавить Alexander-V-Sh в список друзей  
04.08.2006, 14:19

Soniks
Цитата в мета тег нужно только первый запрос вывести или все??

Запрос идет в топик, категории и сами статьи. Циклом вынимается все для отображения 10 стетей.
Если отображаются все статьи, то мета и титл - статика (Статьи)
А если topic !=0 (т.е мы просматриваем все статьи из какого то топика), то в мету идет topicname (бесполезное поле, я его под мету приспособил), а в титл топика идет topictext (Статьи - $topictext)
А уже потом включить выводить хедер и 10 статей циклом.

Массивы для меня кошмарный сон :) Вообще их не понимаю пока.
Поэтому такой еще вопрос, хотя он относится больше к оптимизации.
Запросы такого вида
SELECT topicname, topictext FROM ".$prefix."_topics WHERE topicid='$new_topic'
поидеи базу ниграма не должны нагружать. Выбрать 2 значения из таблицы, в которой всего 4 записи.

lufaleks вне форума      Старый #4  
lufaleks
Новенький
Регистрация: 06.08.2006
Сообщения: 1


Пожаловаться на это сообщениеОтветить с цитированием

Посмотреть профиль Отправить персональное сообщение для lufaleks Найти все сообщения от lufaleks Добавить lufaleks в список друзей  
06.08.2006, 22:22


Ответ


Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.
Быстрый переход



Часовой пояс GMT +4, время: 22:50.


На Верх
Рейтинг@Mail.ru