Ver Mensaje Individual
  #5 (permalink)  
Antiguo 07/06/2011, 07:19
marcpb94
 
Fecha de Ingreso: mayo-2011
Mensajes: 8
Antigüedad: 13 años
Puntos: 0
Respuesta: Problema con php (mysql)

Culpa mia por meterme en cosas en las que no tengo experiencia. Muchas gracias por avisarme, podría haberme pasado dias pensando en qué fallaba.

Bueno, mas o menos ya lo he arreglado, lo que pasa es que ahora ha surgido un problemilla secundario, pero no por eso menos importante.

Resulta que cuando la intentas cambiar, si has introducido el usuario y la contraseña antigua bien, te la cambia y te lo enuncia con el echo. Pero, si la contraseña antigua está mal, no se cambia pero me sale el echo como si hubiera cambiado satisfactoriamente. Aquí el código:

Código PHP:
<?php 
    
include ('conexion.php');
    if(isset(
$_POST['cambiar'])&& $_POST['cambiar']== 'Cambiar contraseña') {
    if(
$_POST['newpassword'] == $_POST['newpassword2']) {
        
$username=trim($_POST['username']);
        
$password=$_POST['password'];
        
$new_password=$_POST['newpassword']; 
        
$result=$db->query("UPDATE account SET password = PASSWORD('$new_password') WHERE login = '".$username."' AND password=PASSWORD('".$password."')");
    
        if(
$result) {
            
                echo 
'La contraseña se ha cambiado correctamente!';
                }else{
'Combinación incorrecta';}
                 
        
    } else {echo
'Procure introducir la misma contraseña en los dos campos.';}
    
    }
?>
Lo que no entiendo es porqué $result devuelve un valor, aun no coincidiendo con los parámetros dados.