URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID8
Нить номер: 3860
[ Назад ]

Исходное сообщение
"Либо чудеса, либо я ламерюга : )"

Отправлено sergbbb , 05-Фев-06 13:06 
У меня на сайте  вот такой скриптик :
<?
for($i=0;$i<=4;$i++)
{
        if ($i==$pid) $t=1; else $t=0;
        menu_item($titles[$i],$describes[$i],
           "http://***********/index.php?pid=".$i,$i,$t);
}

?>
                          <tr height=10>
                    <td>
                    </td>
                    </tr>
            </table>
        </td>
        <td rowspan=10>
        <?
                include("content$pid.php");
        ?>

В общем ПХП работатет, так как первую страницу  оно выдает.
А вот дальше  инклуд НЕ РАБРТАЕТ. Все время отправляет на первую страницу сайта.

В денвере все ОК под виндой, так что скрипт рабочий.
Подскажите кто знает )


Содержание

Сообщения в этом обсуждении
"Либо чудеса, либо я ламерюга : )"
Отправлено cybersun , 05-Фев-06 19:29 
>У меня на сайте  вот такой скриптик :
><?
>for($i=0;$i<=4;$i++)
>{
>        if ($i==$pid) $t=1; else
>$t=0;
>        menu_item($titles[$i],$describes[$i],
>           "http://***********/index.php?pid=".$i,$i,$t);
>
>}
>
>?>
>                          <tr height=10>
>                    <td>
>                    </td>
>                    </tr>
>            </table>
>        </td>
>        <td rowspan=10>
>        <?
>            
>    include("content$pid.php");
>        ?>
>
>В общем ПХП работатет, так как первую страницу  оно выдает.
>А вот дальше  инклуд НЕ РАБРТАЕТ. Все время отправляет на первую
>страницу сайта.
>
>В денвере все ОК под виндой, так что скрипт рабочий.
>Подскажите кто знает )


все просто, в одном файле для никсов исходя из этого кода 2 скрипта. не путай винду с никсами. для никсов ты не передашь переменные из одного скрипта в другой таким образом!


"Либо чудеса, либо я ламерюга : )"
Отправлено Niam , 05-Фев-06 23:43 
>>У меня на сайте  вот такой скриптик :
>><?
>>for($i=0;$i<=4;$i++)
>>{
>>        if ($i==$pid) $t=1; else
>>$t=0;
>>        menu_item($titles[$i],$describes[$i],
>>           "http://***********/index.php?pid=".$i,$i,$t);
>>
>>}
>>
>>?>
>>                          <tr height=10>
>>                    <td>
>>                    </td>
>>                    </tr>
>>            </table>
>>        </td>
>>        <td rowspan=10>
>>        <?
>>            
>>    include("content$pid.php");
>>        ?>
>>
>>В общем ПХП работатет, так как первую страницу  оно выдает.
>>А вот дальше  инклуд НЕ РАБРТАЕТ. Все время отправляет на первую
>>страницу сайта.
>>
>>В денвере все ОК под виндой, так что скрипт рабочий.
>>Подскажите кто знает )
>
>
>все просто, в одном файле для никсов исходя из этого кода 2
>скрипта. не путай винду с никсами. для никсов ты не передашь
>переменные из одного скрипта в другой таким образом!


Почему же не передается?? чем отличается виндовый php от *nixового? Только платформенно-зависимыми штуками. В конкретном случае - проверь регистр файла, который ты инклудишь - в никсах - регистр символов имени файла важен ну и может быть, что разная настройка php...


"не все так просто"
Отправлено XAnder , 06-Фев-06 17:37 
>все просто, в одном файле для никсов исходя из этого кода 2
>скрипта. не путай винду с никсами. для никсов ты не передашь
>переменные из одного скрипта в другой таким образом!

Нет, ты не прав. Из кода include("content$pid.php") следует только то, что будет подгружен файл с именем content<что-то>.php из текущего каталога и ничего больше. О передаче переменных речи не идет.

Если указанный файл не грузится, то следует проверить значение переменной $pid в момент вызова include, а также регистр имени файла (помятуя, что на винде работало).

К вопрошающему - что означает "все время отправляет на первую страницу сайта"? Редирект что ли? Есть какие-нибудь сообщения об ошибках или предупреждения? (hint: проверь error_reporting)


"не все так просто"
Отправлено Simps , 06-Фев-06 17:53 
>>все просто, в одном файле для никсов исходя из этого кода 2
>>скрипта. не путай винду с никсами. для никсов ты не передашь
>>переменные из одного скрипта в другой таким образом!
>
>Нет, ты не прав. Из кода include("content$pid.php") следует только то, что будет подгружен файл с именем content<что-то>.php из текущего каталога и ничего больше. О передаче переменных речи не идет.
>
>Если указанный файл не грузится, то следует проверить значение переменной $pid в
>момент вызова include, а также регистр имени файла (помятуя, что на
>винде работало).
>
>К вопрошающему - что означает "все время отправляет на первую страницу сайта"?
>Редирект что ли? Есть какие-нибудь сообщения об ошибках или предупреждения? (hint:
>проверь error_reporting)

Вопрос на засыпку
include("content{$pid}.php")

Так не пробовали?


"пробовал, разницы нет"
Отправлено XAnder , 07-Фев-06 08:38 
>Вопрос на засыпку
>include("content{$pid}.php")
>
>Так не пробовали?

Пробовал. Ничем не отличается от таких вариантов:

include("content$pid.php")
include("content${pid}.php")
include("content" . $pid . ".php")

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


"пробовал, разницы нет"
Отправлено konst , 10-Фев-06 14:30 
а так $_GET['pid'] ?

"а эдак?"
Отправлено XAnder , 10-Фев-06 15:02 
isset($_GET['pid']) ? $_GET['pid'] : isset($_POST['pid']) ? $_POST['pid'] : isset($_COOKIE['pid']) ? $_COOKIE['pid'] : isset($pid) ? $pid : false

шутка киргуду :) извращаться можно до бесконечности :)


"а эдак?"
Отправлено konst , 10-Фев-06 15:15 
>isset($_GET['pid']) ? $_GET['pid'] : isset($_POST['pid']) ? $_POST['pid'] : isset($_COOKIE['pid']) ? $_COOKIE['pid'] :
>isset($pid) ? $pid : false
>
>шутка киргуду :) извращаться можно до бесконечности :)

при чем тут извращаться?
я просто пытаюсь понять причину, почему $pid не содержит нужного значения...
как я понял $pid передается в GET - стало быть вопрос:
стоит ли нужный параметр в php.ini ?


"а эдак?"
Отправлено serggbbb , 12-Фев-06 00:23 
>при чем тут извращаться?
>я просто пытаюсь понять причину, почему $pid не содержит нужного значения...
>как я понял $pid передается в GET - стало быть вопрос:
> стоит ли нужный параметр в php.ini ?

Вот вот, я просто php.ini вообще не трогал, может там надо что-то исправить ? Если знаешь напиши  пожалуйста.


"а эдак?"
Отправлено konst , 13-Фев-06 14:01 
>>при чем тут извращаться?
>>я просто пытаюсь понять причину, почему $pid не содержит нужного значения...
>>как я понял $pid передается в GET - стало быть вопрос:
>> стоит ли нужный параметр в php.ini ?
>
>Вот вот, я просто php.ini вообще не трогал, может там надо что-то
>исправить ? Если знаешь напиши  пожалуйста.

В php.ini:
register_globals = on


"тоже пытаюсь понять, но не получается"
Отправлено XAnder , 13-Фев-06 09:17 
>при чем тут извращаться?

Не корысти ради, но прикола для :) Шутка была, не обижайся...

>я просто пытаюсь понять причину, почему $pid не содержит нужного значения...

Ну вот и я пытаюсь - уже ниже посоветовал вывести значение $pid перед вызовом include, чтобы посмотреть, какой файл подключается. Но что-то serggbbb не ответил. А пока не ответит, дальнейшие рассуждения - это тыканье пальцем в небо.


"не все так просто"
Отправлено serggbbb , 08-Фев-06 20:22 

>К вопрошающему - что означает "все время отправляет на первую страницу сайта"?
>Редирект что ли? Есть какие-нибудь сообщения об ошибках или предупреждения? (hint:
>проверь error_reporting)


Вроде как никаких ошибок.
Ведет он себя так :
Он всетаки вставляет страницу content0.php  как только заходишь на сайт.
А когда клацаешь по меню, пид изменяется а  вот  скрипт все равно вставляет только content0.php хотя должен другие контенты , соответствующие пиду!!


"а не портится ли переменная?"
Отправлено XAnder , 09-Фев-06 08:55 
Возможно, к моменту вызова include переменная $pid содержит не то значение. Попробуй перед строкой

include("content$pid.php");

вставить проверку:

echo "<p>Including content$pid.php</p>\n";

Что говорит?

Кстати, у меня твой скрипт работает правильно. Гонял на Apache под FreeBSD.


"а не портится ли переменная?"
Отправлено Сергей , 13-Фев-06 16:36 
http://www.winwordexcel.com/

"???"
Отправлено XAnder , 13-Фев-06 17:15 
>http://www.winwordexcel.com/

Честно пытался врубиться, к чему это, но не понял.

ЗЫ: во всём мире коммерческое ПО делится на обычное и пиратское, а у нас - на обычное и лизенционное :)