Всем привет. Никак не могу толком разобраться с глобальными переменными. Допустим, есть 3 файла 1.php Код (Text): <?php global $test_error; ?> 2.php Код (Text): <?php require_once ('1.php'); global $test_error; $test_error='1'; header("Location: 3.php"); ?> 3.php Код (Text): <?php global $test_error; require_once ('1.php'); echo $test_error; ?> Вот собственно вопрос, как при переходе из 2.php на 3.php в $test_error получить значение, которое присваивается в 2.php ?
передать через гет/пост/куки/сессию. глобальная переменная она глобальна в рамках программы а не в рамках разных запросов к серверу. после того как ты делаешь локейшн 3пхп - твой первый запрос умирает и второй ничего не знает про то какие там у тебя глобальные значения были.
Вот в чем дело, ясно, спасибо. По поводу get, куки, сессии - всё ясно, а вот каким образом можно здесь Post метод использовать ?
при переходе с одной страницы к другой используй форму с post вот так и передавай значение, но только зачем? Может книгу бы прочитал по PHP, вот ещё http://phpfaq.ru/na_tanke
я в своем ответе избыточно перечислил какими способами можно передать значение между двумя разными вызовами. естественно при наличии заголовка редиректа - мы не можем использовать пост. но это частное ограничение конкретной реализации. пост-редирект от одного обработчика к другому - возможен, если клиент соответствует спецификации http/1.1 и понимает статус 307.
Может стоит и на самом деле почитать ))) Есть 2 файла. index.php - он собирает главную и второстепенные страницы ( и так же собирает форму авторизации на главной странице ) Второй файл auth.php - на него отправляется методом post информация об авторизации из index.php. Из auth.php и происходит локейшн обратно на index.php. И в случаи ошибки при авторизации не знаю как её передать из auth.php обратно на index.php ( можно при помощи get, но не особо хочется городить километровые gat параметры в адресной строке )
если проблема авторизации и авторизует файл ауф - покажи ошибку в файле ауф. зачем туда-сюда редиректы делать? откуда это желание у новичков все через жопу делать? у тебя уже есть адрес который связан со входом пользователя. и ошибка входа относится к этому адресу более чем к другому любому на сайте. не надо тебе никакого редиректа с показанием ошибок. показывай прям на странице ауф.
Так ... видимо говорим о разных вещах ... Тему можно закрывать, а за пост про запросы, Ganzal - спасибо
ты хочешь на странице ауф установить переменную и уведомить об этом индекс на который ты делаешь редирект. показывай ошибку на ауф и НЕ изобретай велосипед с бесполезным возвратом к индексу с переменной ошибки установленной из ауфа. это мы о разных вещах? или ты просто не понял?
Я хз ... может тут темы и не закрывают ... Я понял, о чем ты говоришь, но у меня немного другая конструкция ( может и не совсем удачная ). Как я писал выше, форма авторизации собирается в index.php и постом отправляет данные при помощи post на auth.php (в ауф находится только обработка формы авторизации )