ecco la funzione della registrazione
Codice PHP:
function register($n,$c,$p,$p2,$em,$fo){
$n = addslashes(mysql_real_escape_string ($_POST['nome']));
$c = addslashes (mysql_real_escape_string ($_POST['cognome']));
$p = addslashes (mysql_real_escape_string ($_POST['password']));
$p2 = addslashes (mysql_real_escape_string ($_POST['ripetipassword']));
$em = filter_var ($_POST['mail'],FILTER_VALIDATE_EMAIL);
$fo = $_FILES['foto'];
echo $form;
if (empty ($_POST['register'])){
//se tutto vuoto lo script si blocca così evitiamo il problema di tutta quells
//brofaglia di informazioni inutili;
return;
}
if (empty ($n) || empty ($c)){
$error = _INSERTNOMEEPASSW;
echo $error;
return;
}if (empty ($p) and empty ($p2)){
$error.= _PASSWORDNOT;
echo $error;
return;
}if (strlen ($p) < 6){
$error.= _PASSWORDISNOTLONGES;
echo $error;
return;
}if ($p2 != $p){
$error.= _PASSWORDISNOTPASSWORD2;
echo $error;
return;
}if (!(filter_var ($_POST['mail'],FILTER_VALIDATE_EMAIL))){
$error.= _ISNOTEMAIL;
echo $error;
return;
}if (empty ($fo)){
$error.= _NOFOTO;
echo $error;
return;
}else{
$conn = mysql_query ("select mail from utenti where mail = '$em'");
$num = mysql_fetch_row ($conn);
if ($num > 0){
$error.= _USERALREDY;
echo $error;
}else{
$conn = mysql_query ("insert into utenti (nome,cognome,password,mail,foto)values('$n','$c','".sha1($p)."','$em','$fo')");
if ($conn){
$error.= _SUCCESSIFUL;
echo $error;
header("Refresh:10; URL=login.php");
echo _REFRESH;
$mailgroup = "";
mail ($em , $mailgroup= _EMAILHEADER , $mailgroup.= _EMAILBODY .$n . $c. $mailgroup.= _EMAILBODY2 . $p . $emailbody.= _EMAILBODY3);
}else{
echo"ERROR";
}
}
}
la password è criptata in sha1
il problema è che quando eseguo la query per il login non mi riconosce la password anche se la mando in sha1 tramite $_POST
[PHP]
function login ($p,$m){
$p = $_POST['p'];
$m = $_POST['m'];
if (empty ($p) || empty ($m)){
echo "inserie i campi";
return;
}else if (empty ($p)) {
echo "inserire la password";
}else if (empty ($m)){
echo "iserire le mail";
}else{
$conn = mysql_query ("select id,nome,cognome,password,mail,foto from utenti where password = '".sha1($p)."' and mail = '$m'");
$con = mysql_num_rows ($conn);
if ($con > 0)
{
list($id, $nome,$cognome, $pass, $mail, $foto) = mysql_fetch_array($conn);
echo $_SESSION['nome'] = $nome;
echo $_SESSION['cognome'] = stripslashes ($cognome);
echo $_SESSION['password'] = $pass;
echo $_SESSION['mail'] = $mail;
echo $_SESSION['foto'] = $foto;
echo "find";
}
}
}
consigli?
[/PHP]