Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.09.2012, 18:02   #1
Predator199
Форумчанин
 
Аватар для Predator199
 
Регистрация: 26.01.2012
Сообщений: 648
По умолчанию Как реализовать.

Есть функция. После функции идет while (){}
Есть 1 запрос. Нужно получить id до функции. Как можно все это грамотно прописать, так чтоб не прибавить еще 1 запрос?
Predator199 вне форума Ответить с цитированием
Старый 03.09.2012, 18:20   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Цитата:
После функции идет while (){}
Функция где вызывается?
Она описана до цикла или до цикла вызывается?
Напиши еще одну функцию, в которой будешь получать ID, и вызывай ее до той функции.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 03.09.2012, 18:56   #3
Predator199
Форумчанин
 
Аватар для Predator199
 
Регистрация: 26.01.2012
Сообщений: 648
По умолчанию

Помойму не совсем точно сформулировал вопрос.

Вкратце что хочу реализовать.
PHP код:
$tb=(запрос)

$gg=получить id
function get($gg){
...
return $...;
else 
return 
get($...);
}

while (
тд тд){

$tpl-tags('{rezyl}'getparent($cid));


Раз в цикле нет возможности прописать функцию, тогда какие есть выход из этого тупика. Можно еще 1 запрос, но -уже убийство сайта будит.

Еще немного. Айди я получаю ,айди категории в которой находится новость.

Последний раз редактировалось Predator199; 03.09.2012 в 19:00.
Predator199 вне форума Ответить с цитированием
Старый 03.09.2012, 19:16   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Цитата:
return get($...);
Рекурсия?
Цитата:
Раз в цикле нет возможности прописать функцию
Откуда такие утверждения?
Цитата:
Можно еще 1 запрос, но -уже убийство сайта будит.
Смотря как база проиндексированна

Почему тебе внутри функции не вызывать запрос?
Цитата:
не совсем точно сформулировал вопрос.
Боюсь что ты не просто его не сформулировал, а как всегда, нагнал пурги.
Чет мне кажется что и на эту тему адекватных ответов не будет...
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 03.09.2012, 19:58   #5
Predator199
Форумчанин
 
Аватар для Predator199
 
Регистрация: 26.01.2012
Сообщений: 648
По умолчанию

Да рекурсия, если прописать в цикле тогда на первую же строчку будит ругаться.

Код:
function get($cid){
Мол не может определить.
Код:
Fatal error: Cannot redeclare getparent() (previously declared in /home/u959.php:58) in /h.php on line 58
Predator199 вне форума Ответить с цитированием
Старый 03.09.2012, 20:00   #6
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,022
По умолчанию

чего где прописать непрописать?
eval вне форума Ответить с цитированием
Старый 03.09.2012, 20:02   #7
Predator199
Форумчанин
 
Аватар для Predator199
 
Регистрация: 26.01.2012
Сообщений: 648
По умолчанию

Рекурсию в цикл и вывести результат через тег.
Predator199 вне форума Ответить с цитированием
Старый 03.09.2012, 20:05   #8
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,022
По умолчанию

По вашим обрывкам мыслей понять чего вам надо не возможно.
eval вне форума Ответить с цитированием
Старый 03.09.2012, 20:14   #9
Predator199
Форумчанин
 
Аватар для Predator199
 
Регистрация: 26.01.2012
Сообщений: 648
По умолчанию

Вот вообщем.

PHP код:
while ($rowb $db->get_row($tb)) {
    
$аid=$rowb['id'];
        function 
get($аid){
        global 
$cat_info;
        if(
$cat_info[$аid]['parentid']==0)
        return 
$cat_info[$аid]['id'] ;
        else 
        return 
get($cat_info[$аid]['parentid']);
        }    

        
$tplb->set '{rez}'get($cid));    
        } 
$cat_info - массив содержащий информацию обо всех категориях на сайте.
Predator199 вне форума Ответить с цитированием
Старый 03.09.2012, 20:20   #10
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,022
По умолчанию

function в цикл нельзя. где этот while находится?
eval вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

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

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как реализовать revaldo666 Microsoft Office Access 2 25.10.2010 12:54
как реализовать такое же меню как и здесь KWNlnc Общие вопросы Delphi 7 08.06.2010 22:46
Как реализовать на с++ Xnet Общие вопросы C/C++ 1 27.05.2010 22:20
Как реализовать? Gsingle БД в Delphi 4 08.04.2010 11:00
Кнопки как RadioButton'ы в GroupBox'e. Как реализовать? Casper-SC Общие вопросы .NET 9 06.03.2010 20:07