2013-08-12 2 views
0

ОК. Простите, есть пара подобных вопросов, которые были отправлены уже с правильными ответами ... Я знал, что когда-нибудь мне придется попросить людей в Интернете о помощи, но я никогда не думал, что это будет что-то так глупо ...Переменные и переменные сеанса, не работающие в php, включают в себя

вот мой код .. до сих пор ..

index.php:

include "http://www.mywebsite.com/shared.php"; 
$page = "homepage"; 

include "http://www.mywebsite.com/htmlheader.php"; //trying to use "page" variable in here 
echo ("<br>test2: " . $_SESSION['test']); 
include "http://www.mywebsite.com/htmlfooter.php"; 

shared.php:

session_start(); 
$_SESSION['test'] = "what the f_ck im scared"; 

htmlheader.php:

echo ("test1: " . $page . "<br>" . $_SESSION['test']); 

Выход прямо сейчас:

test1:

test2:

(поэтому страницы включаются .. просто не в состоянии использовать переменные ..) Из того, что я понимаю в текущем состоянии, это должно печатать что-то вроде:

test1: что f_ck им напугал

test2: homepagewhat f_ck им напугал

..следующие смешная вещь у меня не было какой-либо проблемы с включаемые с помощью переменной. Я добавил кое-что, но потом он беспорядочно перестал работать, поэтому я уменьшил его до этого, чтобы попытаться выяснить, в чем проблема. Предполагаю, что я совершил какую-то глупую ошибку.

ответ

2

Убедитесь, что вы начали сессию с session_start();

также проверить, является ли allow_url_fopen или allow_url_include или оба были установлены в 0 (отключено) в php.ini. если да, то попробуйте активировать его

include "htmlheader.php"; 

вместо

include "http://www.mywebsite.com/htmlheader.php"; 
+0

+1 Для упоминания 'allow_url_include' и поощрения использования локальных включает; что, вероятно, сделает трюк. Однако 'session_start()' не имеет ничего общего с проблемой, так как пример, который он предоставил, имеет только одну страницу. – Renato

+0

@Renato без session_start(), как инициализируется сеанс? –

+0

Параметр '$ _SESSION ['test']' - как любая другая переменная - будет существовать до тех пор, пока страница не останется. Использование 'session_start()' просто сделает эту переменную доступной для других страниц, но это не проблема здесь, поскольку есть только одна страница (index.php). – Renato

0

обеспечить вам session_start(); в верхней части страницы, которая в том числе includes

+0

эй, спасибо за ваш ответ. К сожалению, в этом контексте я не считаю, что это будет необходимо, но я добавил его в любом случае (мне это понадобится позже). Я все еще не могу получить доступ к переменным, любым другим идеям? – ImRetarted

Смежные вопросы