Как отформатировать Login.php для перенаправления на страницу профиля пользователя - PullRequest
0 голосов
/ 30 марта 2011

Я создал страницу входа, которую после аутентификации пользователя следует перенаправить на страницу своего профиля.Однако, это не так.Это часть страницы, которая должна сделать это:


// if login is ok then we add a cookie 
     $_POST['username'] = stripslashes($_POST['username']); 
     $hour = time() + 3600; 
 setcookie(ID_startHere, $_POST['username'], $hour); 
 setcookie(Key_startHere, $_POST['pass'], $hour);    

 //then redirect them to the members area 
 header("Location: myprofile.php?username=$username"); 

Но вместо этого я просто продолжаю получать:

Warning: extract() [function.extract]: First argument should be an array in /mounted-storage/home94c/sub005.... myprofile.php

Буду признателен за ваши ответы.Спасибо.

Ответы [ 3 ]

0 голосов
/ 30 марта 2011

У вас есть ошибка на myprofile.php

где-то, похожем на это:

extract($somearray);

Ваша ошибка указывает, что $somearray не является массивом.

Попробуйтечтобы проверить это с помощью var_dump( $somearray );

Фрагмент почтового индекса на myprofile.php было бы лучше получить более правильный ответ.

0 голосов
/ 30 марта 2011

В коде, который вы разместили, я вижу, что $username не принимает никакого значения, поэтому при перенаправлении страницы закодированный URL выглядит как myprofile.php?username=, а при попытке использовать extract вы получаетеошибка, потому что массив $_GET или $_POST не имеет значения.

0 голосов
/ 30 марта 2011

две вещи, о которых я могу подумать здесь:

1) одно или оба значения POST отсутствуют

2) $ username не инициализирован.

Обычно точка # 2 не вызывает ошибок, поэтому я скажу, прокомментируйте строку header () и выполните var_dump ($ _ POST), чтобы увидеть, что значения действительно переданы.

Кроме того, посмотрите, каков ваш ID_startHere и Key_startHere

Надеюсь, это поможет.

...