Foro de programación en PHP
actualizar datos de una BD, siempre que no exista el registro
| Autor: fernando Publicado: 09-5-2008 02:04 PM |
|
|
Buenas, me interesaria saber como actualizar los datos de una tabla de una base de datos, siempre que no exista el registro, cogiendolos de un formulario que hay que rellenar,mi problema es que siempre me lo actualiza os pongo el codigo para ver si me podeis resolver esta duda. Un saludo y gracias. <?php $dni=$_POST['dni']; $fecha=$_POST['fecha']; $hora=$_POST['hora']; $codigo=1; $sit=1; mysql_select_db($database_conexion, $conexion); $a="select count(*) from reservas where fecha=='$fecha' and where hora=='$hora' and where codigo== '$codigo' and where sit == '$sit'"; $result=mysql_query($a); $row = mysql_fetch_row($result); if ($row[0] == 0){ header("Location: reser.php?dni=$dni&fecha=$fecha&hora=$hora"); }else{ $mensaje="Esta hora está reservada por otra persona"; echo $mensaje; } ?> |
|
| Autor: source Publicado: 10-5-2008 09:00 AM |
|
| Yo lo haría de la siguiente manera (suponiendo que ya se ha establecido una conexión con la Base de Datos mediante 'mysql_connect')... <?php $dni=$_POST['dni']; $fecha=$_POST['fecha']; $hora=$_POST['hora']; $codigo=1; $sit=1; mysql_select_db($database_conexion,$conexion); $sql="SELECT sit FROM reservas WHERE fecha=='$fecha' && hora=='$hora' && codigo=='$codigo' && sit=='$sit'"; $query=mysql_query($sql,$conexion); $result=mysql_result($query,0); if($result==0){ header("Location: reser.php?dni=$dni&fecha=$fecha&hora=$hora"); }else{ echo('Esta hora es reservada por otra persona'); } ?> Lo que se hizo fue consultar en la BD la existencia de los datos enviados por formulario. Si estos existen redirecciona a la pagina RESER.PHP, de lo contrario muestra el mensaje de error. Recuerda que para actualizar es algo muy distinto, ya que se utiliza la sentencia UPDATE. Espero que te sirva en algo, y sino funciona pues... aprendiste una nueva manera de como no hacerlo :) |
|
