webForumDet fria alternativet

inloggning och PHP

3 svar · 434 visningar · startad av 3fx

3fxMedlem sedan aug. 20072 inlägg
#1

Hej jag använder förljande script på mina sidor för att använda loggning:

**<?php
include 'validate.php';

if (! checkValidate($_SERVER['PHP_AUTH_USER'], $_SERVER['PHP_AUTH_PW'])) {
header('WWW-Authenticate: Basic realm="Min hemsidas lösenordsskyddade sidor"');
header('HTTP/1.0 401 Authorizied');
echo "Du måste ange korrekt användarnamn och lösenord! Detta får du genom att registrera dig.";
exit;
}

?>**

Och filen nedan att lagra mina lösen:
**validate.php
<?php

function checkValidate($user, $pass) {
//byt ut mot de användarnamn och lösenord du vill ha

$users = array('100102' => 'user02',
'2' => '1');

if (isset($users[$user]) && ($users[$user] == $pass)) {
return true;
}
else {
return false;
}
}
?>**

Orginalen finns på http://susnet.se/homWebPHP2.html

Jag vill använda:

header("Location: http://www.example.com/"); /* Redirect browser */

För att skicka folk till en fel sida istället för att få bara text.

Hur ska jag modifiera koden? Prövat själv utan större frangång.

Tack på förhand, Fredrik.

PeddaMedlem sedan juni 20006 032 inlägg
#2
 if (! checkValidate($_SERVER['PHP_AUTH_USER'], $_SERVER['PHP_AUTH_PW'])) {
header("Location: http://www.example.com/"); /* Redirect browser */
exit;
}

Detta borde fungera så länge som du inte har någon output till browsern innan.

3fxMedlem sedan aug. 20072 inlägg
#3

Tyvärr.

Tack för svaret.

Det enda som händer är att den går direkt till den hänvisade sidan.

PeddaMedlem sedan juni 20006 032 inlägg
#4

Ok, när du anropar checkValidate() så returneras true eller false

När du har ! före checkValidate() så kommer du in i if-satsen när den returnerar false.
Vill du ha olika headers beroende på returen eller vad är du ute efter för resultat?

if (! checkValidate($_SERVER['PHP_AUTH_USER'], $_SERVER['PHP_AUTH_PW'])) {
// fel namn eller lösen
header("Location: http://www.example.com/ensida.php"); /* Redirect browser */
exit;
} else {
// rätt namn o lösen
header("Location: http://www.example.com/enannansida.php"); /* Redirect browser */
exit;
}
121 ms totalt · 3 externa anrop · v20260731065814-full.b943c234
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
118 ms — hämta tråd, inlägg och bilagor (db)