Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Luiz Felipe P.

Pagina de Trocar Senha

Recommended Posts

Seguinte, tenho uma pagina de trocar senha, muito simples, eu quis aprimorar ela, eu aprimorei, mas há um erro, a pagina de trocar senha, mostra os erros certinhos, caso não tenha tal quantidade de caracteres, caso a senha não for igual a confirmação de senha, entre outros, mas assim, só mostra o erro, mas a senha troca, é trocada mesmo dando a mensagem de erro. Gostaria de saber como posso solucionar este problema.

 

Pagina de trocar senha que eu alterei:

 

<?php
ob_start(); 
//Include database connection details
require_once('config.php');

//Array to store validation errors
$errmsg_arr = array();

//Validation error flag
$errflag = false;

//Connect to mysql server
$link = mysql_connect(DB_HOST, DB_USER, DB_PASSWORD);
if(!$link) {
	die('Falhou conectando no server: ' . mysql_error());
}

//Select database
$db = mysql_select_db(DB_DATABASE);
if(!$db) {
	die("Nao conseguiu selecionar a DataBase");
}

//Function to sanitize values received from the form. Prevents SQL injection
function clean($str) {
	$str = @trim($str);
	if(get_magic_quotes_gpc()) {
		$str = stripslashes($str);
	}
	return mysql_real_escape_string($str);
}

//Sanitize the POST values
$login = clean($_POST['login']);
$password = clean($_POST['password']);
$npassword = clean($_POST['npassword']);
$npassword2 = clean($_POST['npassword2']);

//Input Validations
if (strlen($login)<6)
echo "<script>alert('The Login must be 6 characters or more!');location.href='ChangePassword.html'</script>";
else if (strlen($password)<1)
echo "<script>alert('The Password must be 1 character or more!');location.href='ChangePassword.html'</script>";
else if (strlen($npassword)<6)
echo "<script>alert('The New Password must be 6 characters or more!');location.href='ChangePassword.html'</script>";
else if (strlen($npassword2)<6)
echo "<script>alert('The Confirm New Password must be 6 characters or more!');location.href='ChangePassword.html'</script>";
else if(!ereg("[a-zA-Z0-9]",$login)) 
echo "<script>alert('Can not use symbols!');location.href='ChangePassword.html'</script>";
else if(!ereg("[a-zA-Z0-9]",$npassword)) 
echo "<script>alert('Can not use symbols!');location.href='ChangePassword.html'</script>";
else if (($npassword != $npassword2))
echo "<script>alert('Password and Confirm Password is not match!');location.href='ChangePassword.html'</script>";
else




//Create query
$qry="SELECT * FROM t_account WHERE name='$login' AND pwd='".md5($_POST['password'])."'";
$qry1="UPDATE t_account SET pwd='".md5($_POST['npassword'])."', pw2='$npassword' WHERE name='$login' AND pwd='".md5($_POST['password'])."'";
$result=mysql_query($qry);
$result1=mysql_query($qry1);

//Check whether the query was successful or not
if($result) {
	if(mysql_num_rows($result) == 1) {
		//Login Successful
	    echo "<script>alert('Password successfully exchanged!');location.href='ChangePassword.html'</script>";
	}else {
		//Login failed
    	echo "<script>alert('Your Login or Password is wrong!');location.href='ChangePassword.html'</script>";
		exit();
	}
}else {
	die("Query failed");
}
?>

 

Pagina de Trocar senha antes de mudar ela:

 

<?php
ob_start(); 
//Include database connection details
require_once('config.php');

//Array to store validation errors
$errmsg_arr = array();

//Validation error flag
$errflag = false;

//Connect to mysql server
$link = mysql_connect(DB_HOST, DB_USER, DB_PASSWORD);
if(!$link) {
	die('Falhou conectando no server: ' . mysql_error());
}

//Select database
$db = mysql_select_db(DB_DATABASE);
if(!$db) {
	die("Nao conseguiu selecionar a DataBase");
}

//Function to sanitize values received from the form. Prevents SQL injection
function clean($str) {
	$str = @trim($str);
	if(get_magic_quotes_gpc()) {
		$str = stripslashes($str);
	}
	return mysql_real_escape_string($str);
}

//Sanitize the POST values
$login = clean($_POST['login']);
$password = clean($_POST['password']);
$npassword = clean($_POST['npassword']);

//Input Validations
if($login == '') {
	$errmsg_arr[] = 'Voce esqueceu do seu login O.o';
	$errflag = true;
}
if($password == '') {
	$errmsg_arr[] = 'Voce esqueceu da sua senha atual O.o';
	$errflag = true;
}
if($npassword == '') {
	$errmsg_arr[] = 'Voce esqueceu da sua nova senha O.o';
	$errflag = true;
}

//If there are input validations, redirect back to the registration form
if($errflag) {
	$_SESSION['ERRMSG_ARR'] = $errmsg_arr;
	session_write_close();
	header("location: trocar-senha.php");
	exit();
}

//Create query
$qry="SELECT * FROM t_account WHERE name='$login' AND pwd='".md5($_POST['password'])."'";
$qry1="UPDATE t_account SET pwd='".md5($_POST['npassword'])."', pw2='$npassword' WHERE name='$login' AND pwd='".md5($_POST['password'])."'";
$result=mysql_query($qry);
$result1=mysql_query($qry1);

//Check whether the query was successful or not
if($result) {
	if(mysql_num_rows($result) == 1) {
		//Login Successful
	    echo "<span class='text'>Senha trocada com sucesso.</span>";
		exit();
	}else {
		//Login failed
    	echo "<span class='text'>Seu login ou senha estao errados, tente novamente.</span>";
		exit();
	}
}else {
	die("Query failed");
}
?>
     </div></td>
 </tr>
</table>
</body></html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tente utilizar os blocos { } como fazia antes. Provavelmente vai resolver o problema.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.