Скрипт не видит передаваемые ему переменные

Тема в разделе "PHP", создана пользователем Tisa, 6 апр 2009.

Статус темы:
Закрыта.
Модераторы: latteo
  1. Tisa

    Tisa Постоялец

    Регистр.:
    19 мар 2007
    Сообщения:
    142
    Симпатии:
    140
    Сайт много лет отлично работал, перенес его к другому провайдеру (GoDaddy), работать перестал.

    Анализ кода показал парадоксальную проблему, вызываю скрипт и передаю ему параметр, делаю это следующим образом:

    http://site.ru/skript.php?jal=15v

    В скрипте, первой строкой ставлю

    И ничего не получаю.

    И еще сайт работал на хостинге с PHP4, на новом хостинге PHP5.

    Подскажите в чем могут быть грабли. :thenks:
     
  2. kud

    kud Постоялец

    Регистр.:
    18 фев 2009
    Сообщения:
    89
    Симпатии:
    11
    в register globals

    пробуй:
    PHP:
    <?php
    echo $_GET['jal'];
    ?>
    А вобще пропиши в настройках php register globals on
    можно через .htaccess
    добавь строчку
    Код:
    php_flag register_globals On
     
    Tisa нравится это.
  3. Tisa

    Tisa Постоялец

    Регистр.:
    19 мар 2007
    Сообщения:
    142
    Симпатии:
    140
    php_flag register_globals On - выдает Internal Server Error :confused:

    а вот

    $_GET['jal']; - работает. Спасибо.


    Еще возникла проблема, там-же.
    Не могу получить данные посланные скрипту методом POST
    т.е. код:

    Не отрабатывает
     
  4. Arqin

    Arqin

    Регистр.:
    17 мар 2009
    Сообщения:
    185
    Симпатии:
    37
    Данные отправляемые методом POST доступны в массиве $_POST[], но никак не $_GET[] =)))
    Попробуй:
    PHP:
    echo $_POST['slovo']; 
     
    Tisa нравится это.
  5. Alternator

    Alternator

    Регистр.:
    23 мар 2009
    Сообщения:
    295
    Симпатии:
    145
    для метода POST имя переменной соответсвенно $_POST['slovo']
    а вообще почитайте подробней мануал раздел предопределенные переменные(Суперглобальные переменные PHP), откроете для себя много нового
    а register_globals On о нем лучше забудьте
    и вообще, о таком способе получения переменных извне, как вы пользовались.
    это архивредно, и в PHP6 собираются эту опцию вообще убрать(в PHP5 она отключена по умолчанию)
    используйте суперглобальные массивы, и не знайте бед
    PS массив $_REQUEST объединяет в себе $_GET и $_POST
     
  6. Vicer

    Vicer Прохожие

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

    попробуйте в самом начале скрипта вставить строку:
    Код:
    foreach ($_REQUEST as $key => $value) $$key = $value;
    и все заработает в неизменном виде.
     
  7. ebony_trader

    ebony_trader Создатель

    Регистр.:
    7 апр 2009
    Сообщения:
    24
    Симпатии:
    6
    хехе спасибо! хотел посоветовать, но незнал как это реализовать)
     
  8. Tisa

    Tisa Постоялец

    Регистр.:
    19 мар 2007
    Сообщения:
    142
    Симпатии:
    140
    Совет замечательный но бессмысленный.
    Скрипт писался лет 7 назад, тогда я читал литературу, но по 4-ке, все эти годы у меня не было необходимости в изучении РНР.

    Поэтому думаю рациональнее задать здесь нелепый вопрос, на который профи ответят не задумываясь, чем штудировать пару дней литературу по 5-ке, что-бы найти эту одну строчку. Учитывая что вероятно полученные знания не понадобятся мне еще 7 лет.

    А по сабжу - всем спасибо, первых двух ответов хватило, скрипт давно работает.

    Тему можно закрывать.
     
  9. 1d37r

    1d37r Читатель

    Заблокирован
    Регистр.:
    16 сен 2007
    Сообщения:
    288
    Симпатии:
    48
    Почему все так любят когда им разжовывают все до мелочей? Когда просто набрать в том же гугле^
    http://www.google.ru/search?q=Переменная+php
    И всё сразу же становится понятно.
    :tcl:
     
  10. istifadeci

    istifadeci Читатель

    Заблокирован
    Регистр.:
    31 дек 2007
    Сообщения:
    14
    Симпатии:
    0
    помогите с сессиями

    Что ето значит

    Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home/azint730/public_html/test/pass.php:1) in /home/azint730/public_html/test/pass.php on line 2
     
Статус темы:
Закрыта.