За последние 24 часа нас посетили 36899 программистов и 1670 роботов. Сейчас ищут 998 программистов ...

Глобальные переменные

Тема в разделе "PHP для новичков", создана пользователем Perez, 4 июл 2012.

  1. Perez

    Perez Активный пользователь

    С нами с:
    24 апр 2012
    Сообщения:
    22
    Симпатии:
    0
    Адрес:
    Санкт-Петербург
    Пытаюсь в глобальную переменную засунуть массив и добавлять туда адреса страниц, по которым пользователь ходил на сайте... Не получается. Глобальная переменная всегда пустая при открытии новой страницы.

    Фиг с ним, делаю даже проще, на двух страницах вот такой код:
    $GLOBALS["vozvr123"]="aaa".$GLOBALS["vozvr123"];
    echo $GLOBALS["vozvr123"];

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

    Что я делаю не так, помогите?
     
  2. uorypm

    uorypm Активный пользователь

    С нами с:
    3 мар 2012
    Сообщения:
    98
    Симпатии:
    0
    Здравствуйте, Perez.
    Не буду рассказывать теорию про "глобальные переменные/константы", но посоветую использовать сессии.
     
  3. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    Кроме сессий никаких переменных не живут между вызовами. А сессии живут недолго. Но можно поменять в конфиге.
     
  4. uorypm

    uorypm Активный пользователь

    С нами с:
    3 мар 2012
    Сообщения:
    98
    Симпатии:
    0
    Конфиг не всегда доступен.
    session_set_cookie_params() в помощь
     
  5. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    если это доступно, то скорее всего и пхп ини можно кинуть. Но вобще если вдруг кому-то вступило в голову сделать вечные сессии, то наверное стоит взять рублей за 150 впску...
     
  6. Your

    Your Старожил

    С нами с:
    2 июл 2011
    Сообщения:
    4.074
    Симпатии:
    7
    Пиши в файлы.
    Сделай конфиги парси и выдергивай при необходимости.

    Раз уже ничего на ум не приходит.
     
  7. Perez

    Perez Активный пользователь

    С нами с:
    24 апр 2012
    Сообщения:
    22
    Симпатии:
    0
    Адрес:
    Санкт-Петербург
    uorypm, спасибо! Через $_SESSION получилось!
    igordata, чето я слишком переоценивал глобальные переменные. Нужно внимательнее мне читать мануалы :)
    Your, не, через файлы это уж совсем слишком же, на кройняк через куки можно было бы, но с сессиями по-проще будет
     
  8. Your

    Your Старожил

    С нами с:
    2 июл 2011
    Сообщения:
    4.074
    Симпатии:
    7
    Perez,
    Тем самым полностью сохранить результат записи не удастся, если это не записать)
    Даже если у вас вечные сессии, то вероятности того, что при сбоях или ошибках она может не сохранится)

    Вообще про NOSQL читайте тогда )

    И сделать операции как вы говорите, между пользователями, кто где находится и чем занимается на их стороне... =)
     
  9. mkramer

    mkramer Суперстар
    Команда форума Модератор

    С нами с:
    20 июн 2012
    Сообщения:
    8.597
    Симпатии:
    1.764
    Perez, вы не глобальные переменные переоценивали, а время жизни программы на php. А живёт прога ровно до того момента, как страничка ушла от сервера к браузеру. Когда посетитель снова заходит на страницу, прога исполняется по новой
     
  10. Your

    Your Старожил

    С нами с:
    2 июл 2011
    Сообщения:
    4.074
    Симпатии:
    7
    Еще многие считают, что работа происходит от написания кода, а не при выполнении программы, как будто он пишется и выполняется) ахах), я вообще был в шоке)