elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  ayuda con la actualizacion de una base de datos
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: ayuda con la actualizacion de una base de datos  (Leído 1,954 veces)
enehy

Desconectado Desconectado

Mensajes: 4


Ver Perfil
ayuda con la actualizacion de una base de datos
« en: 11 Diciembre 2009, 19:26 pm »

buenas tardes, estoy intentado actualizar una base de datos con el siguiente código:


<html>
<head>
<title>Ejemplo recogida de archivo</title>
<link rel="stylesheet" href="../estilo.css" type="text/css">
</head>

<body>
<center>
<p class="titulo"></p>
<br>

<?php

$conexion=mysql_connect("127.0.0.1", "programa","programa");
mysql_select_db("distribuidora",$conexion);

$nombre=$_POST["nombre"];
$apellidos=$_POST["apellidos"];
$dni=$_POST["dni"];
$fecha_nacimiento=$_POST["fecha_nacimiento"];
$categoria_laboral=$_POST["categoria_laboral"];
$domicilio=$_POST["domicilio"];
$telefono=$_POST["telefono"];

if ( ($nombre!=NULL) AND ($apellidos!=NULL) AND ($dni!=NULL) AND ($fecha_nacimiento!=NULL) AND
   ($categoria_laboral!=NULL) AND ($domicilio!=NULL) AND ($telefono!=NULL) )
   {
      
      $sql="SELECT dni FROM empleados WHERE dni='$dni' ";
      $result=mysql_query($sql, $conexion)or die (mysql_error());
      //comprobar si en nuevo dni existe en la base de datos
         if (mysql_num_rows( $result) >1)
         {
            echo "<script>history.back(alert(\"Error: el empleado ya existe\"))</script>";
            break;
         }
         else
         {
         $sql="UPDATE empleados SET dni='$dni' , nombre='$nombre' , apellidos='$apellidos', categoria_laboral='$categoria_laboral', domicilio='$domicilio', fecha_nacimiento='$fecha_nacimiento', telefono='$telefono' WHERE dni='$dni' ";
               $result=mysql_query($sql, $conexion);
            if($result)
            {
            header("Location: http://127.0.0.1/inicio_admin.html");
            exit;
            }
            else{ echo mysql_error($conexion) ;}
         }
      
   }


?>

</center>

</body>
</html>





Lo único que me sale es un página en blanco, alguien podría decirme en qué falla por favor??

otra cestión es la comprobación  de si el dni nuevo está en la base de datos, es correcto como lo estoy haciendo?

muchas gracias de antemano


En línea

[u]nsigned


Desconectado Desconectado

Mensajes: 2.397

JS/Node developer


Ver Perfil WWW
Re: ayuda con la actualizacion de una base de datos
« Respuesta #1 en: 12 Diciembre 2009, 00:10 am »

La verdad que leer asi, e interpretar mentalmente php (puesto que no consco la estructura ni los datos que hay en tu BB.DD) quita un poco las ganas de responder, pero creo que el problema va por aca:

Código
  1. if (mysql_num_rows( $result) >1)

Citar
otra cestión es la comprobación  de si el dni nuevo está en la base de datos, es correcto como lo estoy haciendo?

No, esta mal, deberia ser ' > 0', es decir, si el dni existe, mysql_num_rows devolvera (al menos) 1. Entonces si solo existen UN registro con es DNI ese IF es evaluado como false, y asi no se actualizara. Me explico?  ;D

Saludos


En línea

No hay atajo ante la duda, el misterio se hace aquí...
Se hace carne en cada uno, el misterio es existir!
enehy

Desconectado Desconectado

Mensajes: 4


Ver Perfil
Re: ayuda con la actualizacion de una base de datos
« Respuesta #2 en: 12 Diciembre 2009, 20:01 pm »

La verdad es q tienes razon con lo de la claridad, no pense en como lo ponia, lo siento.

He probado la comprobación como me dijo pero si pongo >0 y lo que quiero actualizar es el dni del empleado q estoy actualizando me va a decir que ya existe, entonces no podré actualizarlo. no se si me explico.

en cuanto a lo de la BBDD, los campos que hay son las variables $nombre...$telefono.
las variables las paso desde un formulario html, y lo que haría este archivo.php sería ingresar todos los campos otra vez en el empleado correspondiente, aunq creo q si cambio el dni no lo haría con esta programacion no?

de todas formas intento modificar sin cambiar el dni y no lo hace, no se por que la verdad. espero q me podais seguir dando algunos consejillos.
muchas gracias m3g@ h@x0R
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
actualizacion de datos con index FOREIGN KEY, (consultas)
PHP
DJmixmancar 0 2,001 Último mensaje 5 Diciembre 2010, 08:05 am
por DJmixmancar
ACTUALIZACION DE BASE DE DATOS DEL NOD 32
Software
chano 0 2,253 Último mensaje 7 Abril 2011, 22:36 pm
por chano
Actualizacion de Datos en vivo
Desarrollo Web
v.antrax 2 2,755 Último mensaje 9 Julio 2011, 16:58 pm
por Alex_bro
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines