SHTTP: PHP не видит переменных и все тут!

artem2005

Новичок
PHP не видит переменных и все тут!

Здравствуйте. В поиске искал, ответа на свой вопрос не нашел.
Стоит PHP 4.3.3 под Linux

register_globals On

но переменных, передаваемых и гетом и постом не видит.
более того, он не видит массивов $_GET и $_POST и $_SESSION. Подскажите, в чем может быть дело?
 

artem2005

Новичок
например передавал в адресной строке переменные и смотрел sizeof($_GET). он равен нулю.
phpinfo() запускал, там нет таких переменных
 

antson

Новичок
Партнер клуба
artem2005
Хостинг бесплатный ?
Натыкался на вариант, что мешался скрипт добавления банеров.

Первыми строчками поставь
echo GetEnv("REQUEST_URI");
print_r($_GET);
 

artem2005

Новичок
ну нет такого массива... и число элементов в нем равно нулю.
если запустить phpinfo() то в разделе PHP Variables мы бы видели (если запустить http://zzzz/index.php?a=1)
$_GET["a"] и его значение 1

-~{}~ 04.10.05 11:48:

Да нет хостинг не бесплатный. Админ спит и нет с ним связи (сервер в штатах), а меня начальство дрючит по черному. :( Не могу понять в чем дело.
 

Tor

Новичок
возможно, переписывание запросов (mod_rewrite) мешает
 

artem2005

Новичок
попробовал isset() видит массив!
дальше делаю:
$keys_array=array_keys($_GET);
echo $keys_array[0];
пусто....
 

Фанат

oncle terrible
Команда форума
попробовал isset() видит массив!
он его всегда видит.

короче, хватит уже бегать с бубном.
ясно, что дело в хостинге.
не получает пхп переменных.

-~{}~ 04.10.05 12:02:

Ринат,_REQUEST есть в пхпинфо.
ну когда же вы научитесь читать топик, в который пишете?
 

artem2005

Новичок
var_dump($_REQUEST);
выдает только:
array(1) { ["PHPSESSID"]=> string(32) "cb041c78b3b853c48d700d31f8ae655f" }
 

Фанат

oncle terrible
Команда форума
гм.
а откуда у тебя там PHPSESSID взялась?
ты что - не на тестовом скрипте, а на рабочем проверяешь?
 

Фанат

oncle terrible
Команда форума
напиши текстовый скрипт с одной строчкой
<? phpinfo() ?>
и проверяй на нём! безо всяких сессий!
 

artem2005

Новичок
вот что заметил. если из одного скрипта, например http://url/test1.php перейти к другому через Header("Location: http://url/test2.php?a=1") то в адресной строке останется http://url/test1.php, соответственно непонятно как и переменные определяются.
 

crocodile2u

http://vbolshov.org.ru
artem2005
И это - все, что тебе удалось выяснить за час? :)

Давай так поступим:
скрипт под названием phpinfo.php, с одной-единственной строчкой <? phpinfo() ?> ты выкладываешь на это штатовский сервер и постишь сюда URL.
 

Avdoshyn

Новичок
а как ты задавал register_globals On
есть доступ к php.ini или через .htaccess?
 

Sardonix

Новичок
Проблема с отправкой данных из HTML-формы в PHP-скрипт.
=======================================================

Исходное:
---------
1) Платформа: WinXPPro
2) HTTP-сервер: SmallHTTP3
3) Корневой каталог сервера: с:\???\www
4) Каталог PHP: С:\???\PHP
5) Каталог библиотек РНР: C:\???\PHP\ext
6) Расположение php.ini: c:\???\PHP
7) PHP-движок: PHP 5.1.0

=======================================================
Имеется HTML-файл с формой:
---------------------------

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<title></title>
</head>
<body>
Ввод
<form name="enter" action="/cgi-bin/gb.php" method="post">
<input type="text" name="edit" size="20" maxlength="256">
<input type="submit" value="Послать">
</form>
</body>
</html>

Имееся PHP-скрипт, в который должны пересылаться данные из формы:
-----------------------------------------------------------------

<?php
@$edit=$_POST['edit'];
if (!$edit)
{
echo("Ввод не данных не произведен!!!Повторите попытку!!!");
exit;
}
echo ($edit);
?>

На странице ввода данных, после, собственно, ввода и отправки...ничего не происходит.
Совсем ничего, даже не вылазит алерт, что "Ввод данных не произведен...", хотя он, по идее,
должен появляться.
Сначала думал, что проблема в том, что в форме указан относительный путь к скрипту (action="/cgi-bin/gb.php"),
но потом понял, что тут что-то другое: во-первых, не возникает ошибка "Not found...", во-вторых,при
аналогичных относительных путях к другим скриптам, не использующим внутренние переменные,
все работает нормально.

Подозреваю, что дело здесь в том, что скрипт не может получить доступ к массиву $_POST.
Замена метода на GET в форме и в скрипте ничего не дала, использование $_REQUEST тоже.
Не помогло ни использование "длинных" имен переменных, ни разрешение "коротких".
Теперь register_globals=off и register_long_array=off, т.е., "средний" стиль как будто
должен работать, но не работает.

Что делать?
 
Сверху