Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
eu tou usando javascript para verifica se a nova estão iguais porem queria por para verifica a antiga....
/applications/core/interface/imageproxy/imageproxy.php?img=http://image.prntscr.com/image/bb530b28f6c24ba88b1132dd86a92766.png&key=2a3d3b652f0fceed0b1e8e7ff6f44b9b45918373eae34a6b0987da6a55eef9b5" style="width:250px;height:auto;" /> /applications/core/interface/imageproxy/imageproxy.php?img=http://image.prntscr.com/image/d87f6e38cb2d4005add2ba561554c0b4.png&key=2b714bd1eb24c564e9a44ea95eff5b31d0bf52755fb25e9961c60dcf566b1fce" style="width:250px;height:auto;" />
CODIGO JS:
function validarSenha (input){
if (input.value != document.getElementById('senhanova').value) {
input.setCustomValidity('Repita a senha corretamente');
} else {
input.setCustomValidity('');
}
}
LEMBRANDO: TOU USANDO "MYSQL"
obs.: Não é PDO ou MySQLiImagino que deva estar utilizando algum hash em suas senhas, portanto você pode usar ajax quando o campo antiga senha for preenchido ou fazer todas as verificações ao realizar o post.
<?php
if($_POST['senha']) {
$senhanova = md5(mysql_real_escape_string($_POST['senhanova']));//
mysql_query("update usuarios set senha='$senhanova' where (email = '".$_SESSION['usuarioEmail']."')");
}
Para está função so tenho esse codigo "Mysql" e o JS... porem queria que o campo da antiga funciona-se porem nao faço a minima ideia pos sou novo e ainda tou aprendendo...Esse código é apenas para gravar a senha.
No código que você chama a tela de alterar a senha, precisa obter os dados da senha antiga no banco de dados e jogar na vista para comparar com a senha digitada de forma parecida com o que fez com a senha nova.
>
27 minutos atrás, marcelobbt disse:
Esse código é apenas para gravar a senha.
No código que você chama a tela de alterar a senha, precisa obter os dados da senha antiga no banco de dados e jogar na vista para comparar com a senha digitada de forma parecida com o que fez com a senha nova.
è Por Um MODAL:
<div role="tabpanel" class="tab-pane active" id="senha">
<form role="form" action="" method="post" enctype="multipart/form-data">
<div class="form-group">
<input type="password" class="form-control input-lg" name="senhaantiga" id="senhaantiga" value="" placeholder="Nova Senha" required>
</div>
<div class="form-group">
<input type="password" class="form-control input-lg" name="senhanova" id="senhanova" value="" placeholder="Nova Senha" required>
</div>
<div class="form-group">
<input type="password" class="form-control input-lg" name="resenha" id="resenha" oninput="validarSenha(this)" value="" placeholder="Repetir A Nova Senha" required>
</div>
<div class="form-group">
<div id="divcheck">
</div>
</div>
<hr>
<center>
<input name="senha" class="btn btn-primary btn-embossed btn-lg btn-wide" type="submit" value="Alterar" />
<button type="button" data-dismiss="modal" class="btn btn-danger btn-embossed btn-lg btn-wide"> Cancelar </button>
</center>
</form>
</div>É o que estou tentando dizer.
O que você tem apresentado são códigos de html e css, mas não o PHP.
<?php
if($_POST['senha']) {
$senhanova = md5(mysql_real_escape_string($_POST['senhanova']));
$senhaantiga = md5(mysql_real_escape_string($_POST['senhaantiga']));
$q = mysql_query("SELECT senha FROM usuarios WHERE email = '{$_SESSION['usuarioEmail']}'");
$oldPass = mysql_fetch_assoc( $q );
$oldPass = $oldPass['senha'];
if( $oldPass != $senhaantiga ){
die('Senha antiga está incorreta');
}
mysql_query("update usuarios set senha='$senhanova' where (email = '".$_SESSION['usuarioEmail']."')");
}
Bom, basicamente você precisa antes de dar o update, pegar a senha do usuário e comparar com o que ele digitou, caso estejam diferentes, para o script (die) e diz que a senha está incorreta>
18 minutos atrás, Mateus Silva disse:
<?php
if($_POST['senha']) {
$senhanova = md5(mysql_real_escape_string($_POST['senhanova']));
$senhaantiga = md5(mysql_real_escape_string($_POST['senhaantiga']));
$q = mysql_query("SELECT senha FROM usuarios WHERE email = '{$_SESSION['usuarioEmail']}'");
$oldPass = mysql_fetch_assoc( $q );
if( $oldPass != $senhaantiga ){
die('Senha antiga está incorreta');
}
mysql_query("update usuarios set senha='$senhanova' where (email = '".$_SESSION['usuarioEmail']."')");
}
Bom, basicamente você precisa antes de dar o update, pegar a senha do usuário e comparar com o que ele digitou, caso estejam diferentes, para o script (***die***) e diz que a senha está incorreta
è bem isso que quero porem nao consegui coloca para verificar a senha antiga mesmo colocando certo pula pro erro (***die***)/ Substitua esse: /
if( $oldPass != $senhaantiga )
/ Por esse: /
if( $oldPass['senha'] != $senhaantiga )
>
18 minutos atrás, Mateus Silva disse:
/ Substitua esse: /
if( $oldPass != $senhaantiga )
/ Por esse: /
if( $oldPass['senha'] != $senhaantiga )
eu alterei essa parte ai e o campo de repetir a nova senha:
<div class="form-group">
<input type="password" class="form-control input-lg" name="senhaantiga" id="senhaantiga" value="" placeholder="Senha Antiga" required>
</div>
<div class="form-group">
<input type="password" class="form-control input-lg" name="senhanova" id="senhanova" value="" placeholder="Nova Senha" required>
</div>
<div class="form-group">
<input type="password" class="form-control input-lg" name="senhaconf" id="senhaconf" oninput="validarSenha(this)" value="" placeholder="Repetir A Nova Senha" required>
</div>
porem até ai tudo certo; funcionando o validor mais o problema mesmo com o erro o comando troca a senha...
<?php
if($_POST['senha']) {
$senhanova = md5(mysql_real_escape_string($_POST['senhanova']));
$senhaantiga = md5(mysql_real_escape_string($_POST['senhaantiga']));
$q = mysql_query("SELECT senha FROM usuarios WHERE email = '{$_SESSION['usuarioEmail']}'");
$oldPass = mysql_fetch_assoc( $q );
if( $oldPass['senha'] != $senhaantiga ){
//die('Senha antiga está incorreta');
echo "<script> window.alert('$nome, Sua Senha Antiga Está Incorreta!'); </script>";
}
mysql_query("update usuarios set senha='$senhanova' where (email = '".$_SESSION['usuarioEmail']."')");
}>
Citar
Alguém ajuda?
Cadê o session_start() no início do documento ?
>
4 minutos atrás, Alaerte Gabriel disse:
Cadê o session_start() no início do documento ?
esta no começo do começo da pagina essa parte é uma função para o modal; porem o mesmo com session_start(); ainda que digita a senha erra mais o problema que nao esta impedindo do mesmo ser alterada; e quando envia a senha correta nao mostra o erro e troca normalmente; o problema e que mesmo digitando a senha antiga errada a senha ela é alterada.
O ***die ***que eu havia colocado não era atoa, rs. Note que não existe um else, logo, se você não interromper o script com die, exit ou return false, o script vai continuar rodando e a senha vai ser alterada.
Solução é manter uma das opções para interromper o script ou chamar o mysql dentro de um bloco elseif( $oldPass['senha'] != $senhaantiga ){
//die('Senha antiga está incorreta');
echo "<script> window.alert('$nome, Sua Senha Antiga Está Incorreta!'); </script>";
}else{
mysql_query("update usuarios set senha='$senhanova' where (email = '".$_SESSION['usuarioEmail']."')");
}>
36 minutos atrás, Mateus Silva disse:
O die que eu havia colocado não era atoa, rs.
Sabe quando tamos começando aprende ja pensamos que podemos muda de tudo kkk Obg :D
----------------------------------------------------------------------------
>
36 minutos atrás, Mateus Silva disse:
Solução é manter uma das opções para interromper o script ou chamar o mysql dentro de um bloco else
era bem isso que tava faltando :p
----------------------------------------------------------------------------
>
33 minutos atrás, Alaerte Gabriel disse:
if( $oldPass['senha'] != $senhaantiga ){
//die('Senha antiga está incorreta');
echo "<script> window.alert('$nome, Sua Senha Antiga Está Incorreta!'); </script>";
}else{
mysql_query("update usuarios set senha='$senhanova' where (email = '".$_SESSION['usuarioEmail']."')");
}
Obrigado :D
----------------------------------------------------------------------------
Resolvido <3
foi pq eu tirei o Die :p a do else tbm funcionou vou usa obrigado!
**Mateus Silva**
**Alaerte Gabriel**
**Deus Os Abençoem :D**Amém. Obrigado.
Coloca seu código em PHP para poder ajudar melhor.
Acredito que pelo que você colocou a melhor opção seria com seu código php obter a senha antiga no banco de dados e passar um json para o javascript para que verifique a senha antiga por lá.