Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> header 
:(
    Опции темы
anti_snayper
Дата 12.10.2007, 01:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 80
Регистрация: 13.2.2007

Репутация: нет
Всего: нет



Проблема такая:
я авторизируюсь на странице http://localhost/..../history.php?id_grypi=1&id_menu=1
после входа он меня кидает на  http://localhost/..../history.php
А т.к. вксь сайт динамический, то без этих параметров ( id_grypi=1&id_menu=1 ) вся страница сплошь в ошибках.
вот часть кода:
Код

<?php
session_start();
?>
...........
<?php
    include_once("auhtorization.inc");
    $php_self = $_SERVER['PHP_SELF'];
    $regstr = "
           <FORM action=\"{$php_self}\" method=\"post\" border=5>
           <TABLE>
                <COL align=\"right\"> <COL align=\"left\">
                 <TR>
                        <TD>логин:</TD>
                        <TD><INPUT type=\"text\" name=\"user\" value=\"\"></TD>
                </TR>
         <TR>
               <TD>пароль:</TD>
               <TD><INPUT type=\"password\" name=\"pass\" value=\"\"></TD>
        </TR>
        <TR>
                 <TD colspan = 2><INPUT type=\"submit\" name=\"submit\" value=\"Войти\"></TD>
       </TR>
    </TABLE>
     </FORM>";
echo($regstr);
?>


а это auhtorization.inc
[code=php]
...........
<?php
// булева переменная $vhod определяет выполнены условия для входа или нет
if ($vhod) {
    $_SESSION["username"] = $user;
        $url = "index.php";
        header('Location: ' . $url . "?" . session_name() . "=" . session_id());  
}
?>
/code]
нужно чтобы после входа, пользователь перенаправлялся index.php
либо оставался на этой же странице но параметры передаваемые через GET не исчезали.
В приведенном коде 2й вариант я срезал, так как даже на index.php 
в чем ошибка может кто-нить подсказать?
PM MAIL   Вверх
rMaveric
Дата 12.10.2007, 08:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 375
Регистрация: 18.7.2003

Репутация: 3
Всего: 6



Ты же сам передаешь URL страницы для редиректа а именно 
Код
header('Location: ' . $url . "?" . session_name() . "=" . session_id());


Тут, как ты можешь заметить нет никаких параметров касательно место положения тебя на сайте, тебе необходимо предварительно перед авторизацией сохранять параметры текущего положения и потом их востанавливать, я не знаю всего твоего кода, но если у тебя используется всего лишь 2 переменные то может быть что-то подобное:
Код

<?php
// булева переменная $vhod определяет выполнены условия для входа или нет

$id_grypi=$_GET['id_grypi'];
$id_menu=$_GET['id_menu'];
if ($vhod)
    $_SESSION["username"] = $user;
$url = "index.php";
header('Location: index.php'. session_name() . '=' . session_id()."&d_grypi=$d_grypi&id_menu=$id_menu");  
?>


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


--------------------
Моя благодарность не будет иметь границ. в определенных рамках конечно ;)
---
Веду IT блог
PM MAIL WWW ICQ   Вверх
anti_snayper
Дата 12.10.2007, 12:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 80
Регистрация: 13.2.2007

Репутация: нет
Всего: нет



Этот адрес я привел  в качестве примера, форма авторизации у меня если на многих страницах сайта и  параметры на них - разные.
Можно ли как-нибудь передать в переменную адрес текущий страницы вместе со всеми параметрами?





Это сообщение отредактировал(а) anti_snayper - 12.10.2007, 18:08
PM MAIL   Вверх
rMaveric
Дата 12.10.2007, 21:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 375
Регистрация: 18.7.2003

Репутация: 3
Всего: 6



Можно, все зависит от того какой скрипт у тебя отвечает за авторизацию, если отдельный, то он может проверить реферальскую ссылку, если текущий, то может просто проанализировать УРЛ


--------------------
Моя благодарность не будет иметь границ. в определенных рамках конечно ;)
---
Веду IT блог
PM MAIL WWW ICQ   Вверх
anti_snayper
Дата 12.10.2007, 21:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 80
Регистрация: 13.2.2007

Репутация: нет
Всего: нет



Все , сделал.
Проблему обошел примерно таким кодом:
Код

 $url = $_SERVER['HTTP_REFERER'];
                                  foreach($_GET as $key => $value) {
                                   if (strstr($url,"?")) {
                                       $url .='&'.$key. '=' .$value;
                                   }
                                   else
                                   {
                                       $url .='&'.$key. '=' .$value;
                                   }
                                  }

Всем спасибо
 smile 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0674 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.