Cita:
Iniciado por dany97
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 originalUPDATE [clientes SET nombre='$valor1', apellido='$valor2',
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 originalUPDATE clientes
SET nombre='$valor1',
apellido='$valor2'
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$sql = "SELECT * FROM clientes WHERE Idcliente = '" . $_GET['idcliente'] . "'";
$resul = $conn->query($sql);
if (!$conn->error) {
while ($row = $resul->fetch_array()) {
$nombre = $row["nombre"];
$apellido = $row["apellido"];
$Idcliente = $row["Idcliente"];
}
}
$id = $_POST['idcliente'];
$valor1 = $_POST['nombre'];
$valor2 = $_POST['apellido'];
if ($_POST['enviar'] == "modificar") {
$sql = "UPDATE clientes SET nombre='$valor1', apellido='$valor2' WHERE IDcliente='$id'";
$resul = $conn->query($sql);
if (!$conn->error) {
echo "Actualizado correctamente";
} else {
echo "Error al ejecutar la consulta:" . $conn->error;
return;
}
} else {
header("Location: modificar.php"); }