2013-10-02 5 views
1

После того, как я вошел в я установить переменную сессии внутри корпусного элемента (внутри login.php), как показано ниже:переменные сессии не работает на разных страницах

session_start(); 
$_SESSION['Username'] = $_POST["Username"]; 

if(isset($_SESSION['Username'])) 
    $loginTrue = 1; 
else 
    $loginTrue = 0; 

и на вершине каждой страницы я добавил этот

<?php 
session_start();   //this was added after seeing many suggestions in stack overflow that session_start() has to be called at the top on each page. Though i tot calling once was sufficient. 
if(isset($_SESSION['Username'])) 
    $loginTrue = 1; 
else 
    $loginTrue = 0; 
?> 

Теперь, когда я перенаправляю свою страницу после входа в систему с login.php $ _SESSION ['Username'] получает неустановленный, я не знаю, как это сделать. Я перенаправляю с помощью нажатия кнопки, как в onclick выполнить window.location = home.php

+0

не может быть, потому что $ _POST ["Username"] пуст? попробуйте использовать $ _POST ['Username'] и посмотрите, работает ли это. – Maximus2012

+0

на странице, где вы получаете POST, выполните команду 'print_r ($ _ POST)', чтобы проверить, не является ли он пустым. –

+0

нет, все они прекрасно, потому что когда я печатаю $ _SESSION ['Username'], он отлично отпечатывается в вошедшая в систему страница $ loginTrue - 1, когда я вхожу в систему, тогда всякий раз, когда я перенаправляю, он становится 0, как в нем сбрасывается. Есть ли что-то вроде ссылки перенаправления i.e window.location = "http: // localhost: 8080/home.php" ??? Должен ли я принудительно использовать http ??? Кстати, даже это не сработало. Я только хотел узнать!!! – ebdo

ответ

0

хорошо, ребята, я решил это как-то. Я не знаю, как я это сделал, но я это сделал. Во-первых, я создал 4 веб-страницы, небольшой, чтобы проверить, поддерживаются ли переменные session. После того, как я подтвердил это, я сделал следующее, и моя оригинальная веб-страница начала работу. Начало сеанса очень важно на всех страницах. Также проверьте активность сеанса в разных браузерах. Также проверьте, закрыв Dreamweaver. Также убедитесь, что используется вместо переходных и прочее, а также, что запуск сеанса предшествует DOCTYPE HTML декларации

1

Это не Comman проверить свой код с этим кодом могут быть некоторые ошибки на странице

<?php 
ini_set('display_errors',1); 
error_reporting(E_ALL); 
?> 

И проверьте настройки php.ini.

И проверьте свой код с помощью другого браузера.

И любой пустой вывод должен быть на вашей странице перед началом сеанса.

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