Nueva pregunta

Pregunta:

Fecha: 22-08-2017 06:14:17 (En Español)

Problemas con UPDATE[No resuelta]

Buen día yo de nuevo, he realizado un archivo de validacion de cambio de contraseña en mi programa, pero no hace el update, es decir me elimina la contraseña que tengo en la tabla pero no me agrega la nueva...me faltara algo? adjunto codigo agradecido de sus aportes.

include "conexion.php";

$user = $_POST['usuario'];
$resultado = $con->query( "SELECT usuario from usuario where usuario = '$user'");


while ($row = mysqli_fetch_row($resultado)){
$us = $row[0];
}

if($us != $user){
echo 'Usuario NO existe, por favor verifique.';
}else{

$result = $con->query("UPDATE usuario set clave='$contrasena' where usuario='$user'");

$resultado1 = $con->query( "SELECT * from usuario where usuario = '$usuario'");

while ($row = msqli_fetch_row($resultado1)){
$name = $row[1];
}

if(isset($name)){
echo 'Contraseña modificada satisfactoriamente';
}else{
echo 'Contraseña NO Modificada por favor verifique!';
}


}

?>


creo que trunca despues del update
Etiquetas: Base de Datos - MySQL - MySQL Desarrollo - PHP - PHP MySQLi - Query - SQL Votos: 0 - Respuestas: 5 - Vistas: 17 Compartir en: Google Facebook Twitter LinkedIn Link
 

Respuestas:

  • Fecha: 22-08-2017 07:00:53 Hola dennys no veo donde estes tomando el valor de $contrasena
    puedes validar que el valor no es valido
    te pongo un ejemplo

    $contrasena  = empty($_POST['contrasena']?123456:$_POST['contrasena']);
    
    $result = $con->query("UPDATE usuario set clave='{$contrasena}' where usuario='{$user}' ");
    
      Votos: 1 - Link respuesta
     
  • Fecha: 23-08-2017 04:49:58 Hola Andy como estas?, fijate la variable $contrasena viene de la pagina anterior es decir donde colocas los valores de usuario y la contraseña nueva, por eso mando a modificar $contrasena de la tabla usuario cuando suario sea igual a $user no se si me entiendes el hereda esa variable y la cambia...de igual modo probare tu recomendacion y aviso al respecto   Votos: 0 - Link respuesta
     
  • Fecha: 23-08-2017 11:39:05 Hola Dennys ya verificastes que si esta llegando es valor intenta mostrando en pantalla el valor con un
    var_dump($contrasena);exit();
      Votos: 0 - Link respuesta
     
  • Fecha: 23-08-2017 13:04:59 Hola Dennys, por lo que veo y como bien dice Andy, no estas tomando el valor que viaja via POST del formulario a tu script donde realizas el update. Asigna el valor POST a tu variable sontraseña:
    $contrasena = $_POST['contrasena'];
      Votos: 0 - Link respuesta
     
  • Fecha: 24-08-2017 04:31:29 Dennys. estas usando query para correr un update. no hay garantias de que lleque a funcionar. tenes que usar exec.
    Sugerencia.
    no recorras con un while para ver si existe tu usuario. hace:
    $resultado = $con->query( "SELECT count(*) as usuarios from usuario where usuario = '$user'");
    indaga ahora si $row['usuarios'] es >0 y listo te ahorras el loop

    Usa try - catch para asegurarte que update fue efectivo o en todo caso analiza el error
      Votos: 0 - Link respuesta
     
Para participar activamente de la comunidad primero debes autenticarte, ingresa al sistema.Iniciar Sesión
 
frjcbbae garagebible.com