Foros del Web » Programando para Internet » PHP »

Error en el codigo Siempre muestra el mismo mensaje

Estas en el tema de Error en el codigo Siempre muestra el mismo mensaje en el foro de PHP en Foros del Web. Hola a todos, nuevamente recurro a ustedes a ver si me pueden ayudar, estoy grabando en una base de datos mysql un registro que viene ...
  #1 (permalink)  
Antiguo 05/05/2007, 09:36
 
Fecha de Ingreso: septiembre-2004
Mensajes: 70
Antigüedad: 20 años, 2 meses
Puntos: 0
Error en el codigo Siempre muestra el mismo mensaje

Hola a todos, nuevamente recurro a ustedes a ver si me pueden ayudar, estoy grabando en una base de datos mysql un registro que viene de un formulario, primero chequeo si existe el campo cedula, si existe mando un mensaje y no hago nada, sino existe, grabo los datos en dos tablas, la de usuario y la de profesor pero me sigue mandando el mensaje de que la cedula existe, pero sin embargo graba los datos en las dos tablas y de verdad ya tengo dos dias dandole vuelta al codigo y no entiendo que es lo que pasa.

Gracias por su ayuda aqui pego el codigo

<?php
include("../include/conexion.php");
if ($_POST['tipo']=="ip"){
$qry = "select cedula_p from profesor where cedula_p=".$_POST['cedula'];
$result = mysql_query($qry) or die('La consulta fall&oacute;: ' . mysql_error());
$num_reg = mysql_num_rows($result);
echo "qury ".$qry;
echo " resultado qury ".$num_reg;

if ($num_reg == 1){
?>
<script language="javascript">
{
alert("LA CEDULA DEL PROFESOR YA EXISTE");
//window.location = 'ingresar_profesor.php';
}
</script> <?
echo " la cedula ya existe";
}
if ($num_reg == 0){
$insertar = "insert into profesor (cedula_p,nombre,apellido,direccion,telefono,perfi l,email,area)";
$insertar = $insertar."values (".$_POST['cedula'].",'".$_POST['nombre']."','".$_POST['apellido']."','".$_POST['direccion'];
$insertar = $insertar."','".$_POST['telefono']."','".$_POST['perfil']."','".$_POST['email']."','".$_POST['area']."')";
$insertar2 = "insert into usuario (cedula,clave,tipo)";
$insertar2= $insertar2."values (".$_POST['cedula'].",'".$_POST['clave']."','".$_POST['perfil']."')";
mysql_query($insertar) or die('La consulta fall&oacute;: ' . mysql_error());
mysql_query($insertar2) or die('La consulta fall&oacute;: ' . mysql_error());
echo " grabo con exito";
}

}
?>
  #2 (permalink)  
Antiguo 05/05/2007, 09:45
 
Fecha de Ingreso: agosto-2005
Ubicación: Valencia
Mensajes: 76
Antigüedad: 19 años, 3 meses
Puntos: 1
Re: Error en el codigo Siempre muestra el mismo mensaje

En principio lo que leo debería de funcionar y no dar el mensaje de aviso de registro ya existente.

De todas maneras, no tiene sentido que al evaluar dos veces una variable a la que no se le cambia el segun este script de TRUE en las dos.

Yo lo que haría sería esto:

Código PHP:
if($num_reg >= 1)
{
  
//Muestra mensaje de registro ya existente
}
else
{
  
//Rutina para almacenar los registros en la BD

__________________
Quien a buen árbol se arrima, buena sombra le cobija. :aplauso:

http://dbtrucos.com
  #3 (permalink)  
Antiguo 06/05/2007, 07:24
 
Fecha de Ingreso: septiembre-2004
Mensajes: 70
Antigüedad: 20 años, 2 meses
Puntos: 0
Re: Error en el codigo Siempre muestra el mismo mensaje

si yo lo tenia como me lo sugieres, pero en un intento deseperado porque no consigo el error comence a hacer modificaciones, pero voy a volver a hacer como me lo sugieres y le he colocado "banderas" a ver si entra despues de el else y no las imprime en pantalla pero si guarda en la base de datos.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:50.