PHP - Ayuda con mysql_querry()

 
Vista:

Ayuda con mysql_querry()

Publicado por Jose (2 intervenciones) el 23/02/2019 02:42:55
Buenos días, llevo ya varios días dandole vuelta a un trozo de código que por más que lo miro y lo vuelvo a mirar lo veo bien, pero algo hay mal, puesto que no me hace la actualización en mysql.

En mysql tengo una tabla que se llama socios, en donde una columna es FECHA_BAJA y otra (primary key) es NUMERO_SOCIO. La fecha de baja es date y la numero_socio numérica.

La sentencia SQL UPDATE si la pongo directamente en mysql se ejecuta bien y se actualiza, por lo que no está ahí el error, pero cuando ejecuto el código me devuelve "ERROR. Su baja no ha sido tramitada, porque falla el mysql_querry (devuelve false), pero no consigo ver el error.

A ver si alguien me saca "del pozo", muchas gracias. Pego el código que da problemas.

1
2
3
4
5
6
7
8
9
10
11
12
if(!$conexion){
    die ('No se puede conectar con la base de datos');
}else{
 
    if(mysqli_query($conexion, "UPDATE SOCIO SET FECHA_BAJA = '$fecha_baja'  WHERE NUMERO_SOCIO = $num_socio")){
        mysqli_close();
        echo "Su baja a sido tramitada.";
    }else{
        echo "<p class='aviso'>ERROR. Su baja no ha sido tramitada.</p>";
    }
 
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de italo_pm
Val: 922
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Ayuda con mysql_querry()

Publicado por italo_pm (150 intervenciones) el 24/02/2019 02:13:38
Hola, los errores en php o mysql se ven solo si decides hacerlos ver.

en este caso, hay una propriedad de mysqli_query que es mysqli_error() la cual sirve para capturar los errores.

un ejemplo seria (hay miles de formas de controlar el exito de una query)

primero que nada, te aconsejo que hagas siempre en manera de test el echo de tu query, para saber si los datos llegaran bien a mysql, recuerda que el campo date va entre " " ya que no es solo numerico.

1
2
3
4
5
6
7
8
9
$Q_update = ("UPDATE tabla SET campo ='".$nuevo_valor."' WHERE id = $id;");
$exec_Q_update = mysqli_query($Q_update) or die('ERRORE, visualizo el error mysql.' .mysqli_error());
 
if ($exec_Q_update) {
   echo "OK, update ejecutado correctamente<br>";
}
else {
  echo "ERROR: UN error ha ocurrido<br>";
}

prueba en test, adaptado tu campos.

salud2.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ayuda con mysql_querry()

Publicado por Jose (2 intervenciones) el 25/02/2019 08:44:25
Hola italo_pm, muchas gracias por haber contestado.

He puesto el código tal y como me indicas, adaptando los campos, y no me devuelve ningún error.

He conseguido que funciono poniendo justo antes de mysql_querri un include con el archivo donde están los datos de conexión, que ya estaba puesto al inicio del script, pero no se por qué se ha solucionado así, la verdad es que no le encuentro sentido porque el if($conexion) me devolvía true, pero bueno, aunque no entiendo el motivo lo dejo así que funciona.

Muchas gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar