| | |
Redirecting - Newbie Question
Please support our PHP advertiser: PostgreSQL or MySQL? Compare and contrast the two most popular open source databases
![]() |
How can I redirect a page to another ? For example, if the user is registered he gets to see the members section and if he is not, he is redirected to a 'Register Now' page when he clicks on a members area link.
Also how will it work if he types in the address in the address bar ? For example, he types www.somesite.com/members_area.php. So when this page loads, it checks if the user is logged in. If he is not, it redirects him to a 'Guest' page or something.
The logging in checking can be done by setting a cookie, if I am not mistaken. How can I redirect to a different page or different site ?
I am a newbie at Php, so sorry if this is too trivial.
Regards
Also how will it work if he types in the address in the address bar ? For example, he types www.somesite.com/members_area.php. So when this page loads, it checks if the user is logged in. If he is not, it redirects him to a 'Guest' page or something.
The logging in checking can be done by setting a cookie, if I am not mistaken. How can I redirect to a different page or different site ?
I am a newbie at Php, so sorry if this is too trivial.
Regards
•
•
Join Date: Jul 2004
Posts: 494
Reputation:
Solved Threads: 21
No, it has nothing to do with session. It has everything to do with HTML headers. You can send a header such as refresh using:
I haven't looked up the exact syntax (not on my computer with that info at my finger tips) of a redirect, but this'll give you a good place to start.
header(header fieldI haven't looked up the exact syntax (not on my computer with that info at my finger tips) of a redirect, but this'll give you a good place to start.
www.uncreativelabs.net
Old computers are getting to be a lost art. Here at Uncreative Labs, we still enjoy using the old computers. Sometimes we want to see how far a particular system can go, other times we use a stock system to remind ourselves of what we once had.
Old computers are getting to be a lost art. Here at Uncreative Labs, we still enjoy using the old computers. Sometimes we want to see how far a particular system can go, other times we use a stock system to remind ourselves of what we once had.
redirect a page to another
I know three methods
1 : use header()
for example
<? header("location: $url"); ?>
2: use HTML <META>
for example
<meta http-equiv="refresh" content="5";url=<? echo $url; >>
3: use javascript
for example
<?
echo "<!--<script language='javascript'>";
echo "location.href='$url'";
echo "</script>-->";
?>
AT the same time ,I think it is better if you combine this means with SESSION!
I know three methods
1 : use header()
for example
<? header("location: $url"); ?>
2: use HTML <META>
for example
<meta http-equiv="refresh" content="5";url=<? echo $url; >>
3: use javascript
for example
<?
echo "<!--<script language='javascript'>";
echo "location.href='$url'";
echo "</script>-->";
?>
AT the same time ,I think it is better if you combine this means with SESSION!
Colin Shao
The best way to set authorization for each page is to use the sessions. The best way to do it is to set two sessions variable: one that contain the level of authorization (for the normal users 1, for moderators 2, the administrator 3) or if you dont want different level just a boolean, the other one that contain the id number of the user that you will need to retrive from the database the user's personal data.
I wrote a very simple function to check the authorization:
[php]function check_auth($lev, $url){
if (@$_SESSION['auth']<$lev) {
header ("Location: http://".ADDRESS.$url);
exit;
}
}[/php]
This function check if the level of authorization contained in the session variable "auth" is lower than the one inserted when the function is used and if it is it redirect to the url decided.
The costant ADDRESS contain the website domain.
This function can be used like this:
[php]
check_auth(1, "/mypage.php");
// To allow any registered user to see this page
check_auth(2, "/mypage.php");
// To allow just user with an authorization level of two[/php]
Usinfg cookie for this purpose wouldn't be secure.
I wrote a very simple function to check the authorization:
[php]function check_auth($lev, $url){
if (@$_SESSION['auth']<$lev) {
header ("Location: http://".ADDRESS.$url);
exit;
}
}[/php]
This function check if the level of authorization contained in the session variable "auth" is lower than the one inserted when the function is used and if it is it redirect to the url decided.
The costant ADDRESS contain the website domain.
This function can be used like this:
[php]
check_auth(1, "/mypage.php");
// To allow any registered user to see this page
check_auth(2, "/mypage.php");
// To allow just user with an authorization level of two[/php]
Usinfg cookie for this purpose wouldn't be secure.
![]() |
Similar Threads
- Newbie Question - How to generate a link (PHP)
- AGP Aperture Size Question (Windows NT / 2000 / XP)
- How to network two Win98 machines (Networking Hardware Configuration)
Other Threads in the PHP Forum
- Previous Thread: Trying to get PHP to send smtp through sendmail 8
- Next Thread: Spot the Error!
Views: 1782 | Replies: 5
| Thread Tools | Search this Thread |
Tag cloud for PHP
.htaccess access ajax apache api array beginner binary broken cakephp checkbox class cms code cron curl database date directory display download dynamic echo email error file files folder form forms function functions google head href htaccess html image include insert integration ip java javascript joomla jquery limit link list login loop mail menu methods mlm mod_rewrite multiple mysql number oop parse paypal pdf php phpmyadmin problem query radio random recursion regex remote script search select server sessions sms soap source space speed sql structure syntax system table tutorial update updates upload url validation validator variable video web webdesign xml youtube





