Tema: Post y get
Ver Mensaje Individual
  #4 (permalink)  
Antiguo 17/01/2015, 18:02
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Editar datos (update)

Cita:
Iniciado por dany97 Ver Mensaje
uso mysql.
los corchetes esos son parentesis ()
Bueno, pues los corchetes de este código están MAL. No se usan corchetes en ninguna sentencia de MySQL:
Código SQL:
Ver original
  1. UPDATE [clientes SET nombre='$valor1', apellido='$valor2',
  2. WHERE IDcliente]='$id'
Además, si miras con cuidado, tienes una coma antes del WHERE, que no corresponde. Las comas separan las asignaciones campo-valor, y nada mas que eso. Esa coma implicaría que hay una asignación faltante o que hiciste un copy+paste incorrecto.

En cualquier caso, como mínimo debes quitar los corchetes, y si son paréntesis tambien debes quitarlos, porque generan un error des sintaxis en MySQL.
Código SQL:
Ver original
  1. UPDATE clientes
  2. SET nombre='$valor1',
  3. apellido='$valor2'
  4. WHERE IDcliente='$id'

Adicionalmente, no estás verificando si MySQL devolvió o no un error, que es una validación mínima que debes hacer, incluso aunque la query estuviese bien escrita (ver MYSQLI: errores ).

Código PHP:
Ver original
  1. $sql = "SELECT * FROM clientes WHERE Idcliente = '" . $_GET['idcliente'] . "'";
  2. $resul = $conn->query($sql);
  3. if (!$conn->error) {
  4.     while ($row = $resul->fetch_array()) {
  5.         $nombre = $row["nombre"];
  6.         $apellido = $row["apellido"];
  7.         $Idcliente = $row["Idcliente"];
  8.     }
  9. }
  10.  
  11.  
  12. $id = $_POST['idcliente'];
  13. $valor1 = $_POST['nombre'];
  14. $valor2 = $_POST['apellido'];
  15. if ($_POST['enviar'] == "modificar") {
  16.     $sql = "UPDATE clientes SET nombre='$valor1', apellido='$valor2' WHERE IDcliente='$id'";
  17.     $resul = $conn->query($sql);
  18.     if (!$conn->error) {
  19.         echo "Actualizado correctamente";
  20.     } else {
  21.         echo "Error al ejecutar la consulta:" . $conn->error;
  22.         return;
  23.     }
  24. } else {
  25.     header("Location: modificar.php");
  26. }
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Última edición por gnzsoloyo; 17/01/2015 a las 19:42