Tällaisen löysin joltain jenkkisivulta.. mutta noi sivut, joille uudelleenohjataan, niin miten ne pitäs suojata?? Siis kyllähän tää toimii, mutta ei suojaa mitään :) Kiitos kiitos.. -nurmari
MySQL taulu sisältää: id, username, password ja redirect.
<?
$dbh=mysql_connect ("localhost", "bloomers", "******") or die ('I cannot connect to the database because: ' . mysql_error());
mysql_select_db ("bloomers_portal");
if(!isset($username) ||!isset($password)) {
// escape from php mode and show login page
?>
<html>
<head>
<title>Login</title>
<head>
<body>
<form action="<?=$PHP_SELF?><?if($QUERY_STRING){ echo"?". $QUERY_STRING;}?>" method="POST">
<p align="center">Members only. Please login to access this document.</p>
<table align="center" border="0">
<tr>
<th>
Username:
</th>
<th>
<input type="text" name="username">
</th>
</tr>
<tr>
<th>
Password:
</th>
<th>
<input type="password" name="password">
</th>
</tr>
<tr>
<th colspan="2" align="right">
<input type="submit" value="Login">
</form>
</th>
</tr>
</table>
</body>
</html>
<?
exit();
}
// If all is well so far.
// Here you would check the supplied username and password against your database to see if they exist.
// For example, a MySQL Query, your method may differ.
$sql = mysql_query("SELECT password,redirect FROM user_table WHERE username = '$username'");
$fetch_em = mysql_fetch_array($sql);
$numrows = mysql_num_rows($sql);
if($numrows!= "0" & $password == $fetch_em["password"]) {
// correct login
$valid_user = 1;
header("Location: ".$fetch_em["redirect"]);
exit;
}
else {
$valid_user = 0;
}
// If the username exists and pass is correct, don't pop up the login code again.
// If info can't be found or verified....
if (!($valid_user))
{
// escape from php mode and show login error page.
?>
<html>
<head>
<title>Login</title>
<head>
<body>
<form action="<?=$PHP_SELF?><?if($QUERY_STRING){ echo"?". $QUERY_STRING;}?>" method="POST">
<p align="center">Incorrect login information, please try again. You must login to access this document.</p>
<table align="center" border="0">
<tr>
<th>
Username:
</th>
<th>
<input type="text" name="username">
</th>
</tr>
<tr>
<th>
Password:
</th>
<th>
<input type="password" name="password">
</th>
</tr>
<tr>
<th colspan="2" align="right">
<input type="submit" value="Login">
</form>
</th>
</tr>
</table>
</body>
</html>
<?
exit();
}
?>Evästeillä? Eli jos käyttäjätunnus/salasana on oikein asetat evästeen, ja sitten noilla mainitsemillasi sivuilla tarkistat löytyykö kyseistä evästettä.
Tai sessionilla? Jotain sellaista yritin väsätä, mutta eipä oikein ottanut tulta alleen. Onkos hajua, mitä tohon pitäis muuttaa/laittaa?
ystävällisesti tiedustellen..
-ruohosika
Mä oon just vääntämässä vastaavaa koodivinkkii... Paljon parempaa tietenkin :P
ajv:
No hyvä.. laita postilla, kun se on valmis ;)
-nur
Kokeles tästä katsoa :)
http://mbnet.fi/oippa/cs15/opensource/
istunnot (Session) saa käyttöön laittamalla sivun alkuun session_start() -funktiokutsun. Tämän pitää siis olla ennen mitään tulostusta, tai vaihtoehtoisesti pitää käyttää tulostuksen bufferointia.
Tämän jälkeen $_SESSION[] -taulukkoon asetetut muuttujat säilyvät istunnon ajan.
Aihe on jo aika vanha, joten et voi enää vastata siihen.