Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: header. направление на нужную страницу
 
 автор: Medulla   (14.09.2007 в 13:36)   письмо автору
 
 

в авторизации необходимо направить usera на нужную страницу:


if (header (...) =http://...) //заголовок страницы?
   {
   $url="admin\index1.php";
   }    
else  
   {
   $url="admin\index2.php";    
   }
echo "<HTML><HEAD> <META HTTP-EQUIV='Refresh' CONTENT='0; URL=$url'></HEAD><body>"; 

   
 
 автор: sim5   (14.09.2007 в 13:42)   письмо автору
 
   для: Medulla   (14.09.2007 в 13:36)
 


<?
header
("locaton: $url");

   
 
 автор: Medulla   (14.09.2007 в 13:56)   письмо автору
 
   для: sim5   (14.09.2007 в 13:42)
 

cпасибо, sim5.

допустим, существует 2 страницы, page1.php и page2.php
для доступа к закрытым данным используется общ. форма авторизации (form.php) + auth.php (где, собственно и прописывается перенаправление).

допустим пользователь на page1. необходимо последовательно передавать заголовок c помощью get в form.php, auth.php? если ли другое решение?
и как будет выглядеть определение заголовка?

   
 
 автор: sim5   (14.09.2007 в 14:06)   письмо автору
 
   для: Medulla   (14.09.2007 в 13:56)
 

header() - это и есть GET передача. Можете передавать в хидере не только урл, но и любые парметры, точно также как и в строке запроса. Или я вас не понял?

   
 
 автор: Medulla   (14.09.2007 в 14:13)   письмо автору
 
   для: sim5   (14.09.2007 в 14:06)
 

в auth.php нужно прописать
if (header (location:page1.php)) ?
а в page1,page2,form ничего?

   
 
 автор: sim5   (14.09.2007 в 14:19)   письмо автору
 
   для: Medulla   (14.09.2007 в 14:13)
 

Ну допустип юзер на page1.php, в зависимости от условий посылаете его с передачей еще каких-то параметров: page2.php?auth=1, где проверяя $_GET['auth'], принимаете решение, и посылаете уже на... )) Ну мне трудно сказать, куда вам надо посылать пользователя и от куда - я ведь не знаю все того, чего хотите вы. С помощью header() можно перенаправить пользователя куда хотите, следуя логике ваших условий.

   
 
 автор: Medulla   (14.09.2007 в 14:25)   письмо автору
 
   для: sim5   (14.09.2007 в 14:19)
 

спасибо. пока понятно. сейчас попробую

   
 
 автор: Medulla   (14.09.2007 в 15:22)   письмо автору
 
   для: Medulla   (14.09.2007 в 14:25)
 

так, что-то не получается.
page1.php:

<a href="http://form.php?auth=$i" target="_parent">, где $i=1


page2.php

<a href="http://form.php?auth=$i" target="_parent">, где $i=2


передаются form.php нормально, в адр.: http://form.php?auth=1 или 2 соответственно.

с формы проверки логина пароля нужно передавть на auth.php
:
form.php

<form action="auth.php?<?php echo $_GET['auth']; ?>" method="post"> 
или <form action="auth.php method="post">? 

дальше не получается.

auth.php
$u="http://auth.php?auth=1";
        if (header("location:$u")) 
        { 
        $url="http://...."; 
        }     
        else   
        { 
        $url="http://...";     
        } 

   
 
 автор: sim5   (14.09.2007 в 15:51)   письмо автору
 
   для: Medulla   (14.09.2007 в 15:22)
 

Я написал auth=1 как пример, это совсем не значит, что именно это и нужно вам. Как у вас присходит авторизация - для меня это "черный ящик", мне ведь этого неизвестно. Я просто вам сказал, что вместо передачи мета-тега и перезагрузки страницы, более "красиво" перенаправить пользователя через хидер. И в последнем случае (если предположить, что auth=1 это будет означать переход на следующий этап авторизации, или ее заключение) надо видимо писать так:


$u=$_GET['auth']; 

if ($u==1) header('location: page2.php'); 
else header('location: page1.php');

Это пример! Я произвольно пишу имена файлов!
Вы вместо того, чтобы проверять принимаемые данные, проверяете хидеры :)

   
 
 автор: Ralph   (15.09.2007 в 07:42)   письмо автору
 
   для: Medulla   (14.09.2007 в 15:22)
 

Ну,вообще то функция header не получает содержимое заголовка,а отправляет заголовок браузеру...

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования