Witam. Napisałem sobie logowanie najpierw na sesjach, a potem chciałem to przerobic na cookies. I tu mam problem umiem dodać ciasteczka. Ale jak mam je wczytać w logowanie i jak ustawić je, żeby były wieczne?
Narazie zrobiłem coś takiego:
Plik logujący:
<?php
switch($load) {
default :
#### LOGOWANIE ####
//Formularz logowania
echo'<form method="POST" action="index.php?mode=login&load=log_me"> <p><input type="text" name="user" size="20" value="login"></p>
<p><input type="password" name="pass" size="20" value="pass"><input type="submit" value="Zaloguj sie" name="B1"></p>
<a href="logowanie.php?co=dodaj">Rejestracja</a>
</form>';
break;
case 'log_me':
//dodaj sesje
$_SESSION['user']=$_POST[user];
$_SESSION['pass']=md5($_POST[pass
]);
//Loguje do systemu
if(login_ok()) {
$stat = user_info();
header("Location: massange.php?value=true1&top=$lang[39]&text=$lang[40]&url=index.php"); } else {
header("Location: massange.php?value=false&top=$lang[41]&text=$lang[42]&url=index.php?mode=login"); }
break;
}
?>
Plik sprawdzający czy zalogowany:
<?php
function login_ok() {
$user = $_SESSION['user'];
$pass = $_SESSION['pass'];
$zapytanie = mysql_query("SELECT * FROM ".$db_prefix."users WHERE users_login ='$user' AND users_password ='$pass' AND users_status ='1';"); $yes = mysql_num_rows($zapytanie);if
($yes==0
) { $ret=FALSE; } else { $ret=TRUE; }return $ret; }
function user_info() {
$user = $_SESSION['user'];
$pass = $_SESSION['pass'];
$query = mysql_query("SELECT * FROM ".$db_prefix."users WHERE users_login ='$user' AND users_password ='$pass';");
$inf[1] = $r['users_id'];
$inf[2] = $r['users_login'];
$inf[3] = $r['users_password'];
$inf[4] = $r['users_email'];
return $inf;
}
?>
Ten post edytował hzl_91 2.01.2007, 15:03:36