Pessoal, tenho um form, onde recebo as informações e passo para banco por uma Public function, porem nao atualiza a tabela do BD.
Alguém sabe algum teste que possa fazer, pois s valores estão passando certinho via post.
Irei postar o código abaixo
Desde já agradeço a atenção.
<?php
//resgatar o codigo deo login da url
$idLogin = $_GET['idLogin'];
//Criacao do objeto UsuarioBD
$objLoginBD = new LoginBD();
$listalogin = $objLoginBD->listar();
//Definir o idUsuario no objeto BD
$objLoginBD->login->idLogin = $idLogin;
$res = $objLoginBD->visualizar();
$login = $res->fetch(PDO::FETCH_OBJ);
if(!empty($_POST)){
//print_r($_POST); exit;
if ($_POST['fsenha']== $_POST['fnovasenha']){
$objLoginBD->login->senha = $_POST['fsenha'];
//print_r($objLoginBD->login->senha); exit;
$res = $objLoginBD->alterarsenha();
//print_r($res); exit;
echo "Senha alterada com sucesso! Clique em SAIR para logar novamente.";
header('location: index.php?pobj=Login&pacao=login');
} else {
echo "Erro ao editar senha! Os campos devem ser iguais.";
}
}
?>
<!Doctype html>
<html>
<h1>Alterar Senha</h1>
<form action="" method="post">
<br />
<label for="senha">Digite sua nova senha: </label>
<input type="text" name="fsenha" id="senha" required value="<?php echo $login->senha; ?>" />
<br />
<label for="novasenha">Confirme sua nova senha: </label>
<input type="text" name="fnovasenha" id="novasenha" required />
<br />
<input type="submit" value="Enviar" />
<input type="reset" value="Limpar" />
</form>
</html>
public function alterarsenha(){
try{
$sql = "UPDATE
login
SET
senha = md5(:psenha)
WHERE
idLogin = :pid ";
$stmp = $this->conexao->prepare($sql);
//Montagem dos parametros
$param['psenha'] = $this->login->senha;
$param['pid'] = $this->login->idLogin;
//Executar o script com os valores dos parametros
$stmp->execute($param);
//echo '<pre>';
//print_r(alterarsenha());
//var_dump(alterarsenha());
//Retorno das informacoes de um cliente
return true;
} catch (PDOException $e){
echo $e->getMessage();
return false;
}
}
}
?>