bom dia, pessoa.. estou iniciando no php e estou criando uma tela de login, mas na parte de alterar a senha, não estou conseguindo concluir o processo.. ele apresenta a seguinte mensagem.. vou colocar o código da parte que estou passando os parâmetros e o código da função.. Desde já agradeço atenção de todos
Mensagem Erro: Warning: PDOStatement::execute(): SQLSTATE[HY093]: Invalid parameter number: number of bound variables does not match number of tokens in C:\xampp\htdocs\ProjetoLogin\classes\usuarios.php on line 75
Pergunta
Müller Pinto
bom dia, pessoa.. estou iniciando no php e estou criando uma tela de login, mas na parte de alterar a senha, não estou conseguindo concluir o processo.. ele apresenta a seguinte mensagem.. vou colocar o código da parte que estou passando os parâmetros e o código da função.. Desde já agradeço atenção de todos
Mensagem Erro: Warning: PDOStatement::execute(): SQLSTATE[HY093]: Invalid parameter number: number of bound variables does not match number of tokens in C:\xampp\htdocs\ProjetoLogin\classes\usuarios.php on line 75
Codigo:
if(isset($_POST['senha']))
{
$email = addslashes($_POST['email']);
$senha = addslashes($_POST['senha']);
$confsenha = addslashes($_POST['confsenha']);
if(!empty($email) && !empty($senha) && !empty($confsenha))
{
$u->conectar("projetologin","127.0.0.1","root","");
if($u-> msgErro == "")
{
if($senha == $confsenha)
{
if($u->alterar($email, $senha))
{
?>
<div id="msg-sucesso">
Alterado com sucesso! Acesse para entrar!
</div>
<?php
}else{
?>
<div class="msg-erro">
Usuário não cadastrado!
</div>
<?php
}
}else{
?>
<div class="msg-erro">
Senha e Confirmar Senha não correspondem!
</div>
<?php
}
}else{
?>
<div class="msg-erro">
<?php echo "Erro: ".$u->msgErro; ?>
</div>
<?php
}
}
else
{
?>
<div class="msg-erro">
Preencha todos os campos!
</div>
<?php
}
Função Alterar
public function alterar($email,$senha){
global $pdo;
$sql = $pdo->prepare("SELECT IdUsuario FROM Usuarios WHERE Email = :e");
$sql->bindValue(":e", $email);
$sql->execute(); //executar comando
if($sql-> rowCount() <= 0)
{
return false; // não existe cadastrada
}else{
$sql = $pdo->prepare("UPDATE Usuarios set Senha = s: where Email = :e");
$sql-> bindValue(":s", md5($senha));
$sql-> bindValue(":e", $email);
$sql-> execute();
return true;
}
}
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.