Foros del Web » Programando para Internet » PHP »

Mi codigo php falla

Estas en el tema de Mi codigo php falla en el foro de PHP en Foros del Web. Hola, pues la cosa esque el siguiente codigo que procesa un formulario me esta fallando: Código PHP: <?php      include( "../../conexion.php" );               //COMPROBAMOS SI YA EXISTEN DATOS REPETIDOS ...
  #1 (permalink)  
Antiguo 20/06/2007, 05:29
 
Fecha de Ingreso: septiembre-2005
Ubicación: Valencia
Mensajes: 738
Antigüedad: 19 años, 2 meses
Puntos: 5
Mi codigo php falla

Hola, pues la cosa esque el siguiente codigo que procesa un formulario me esta fallando:
Código PHP:
<?php
    
include("../../conexion.php");
        
    
//COMPROBAMOS SI YA EXISTEN DATOS REPETIDOS
    
$comprobar1mysql_query("SELECT id FROM usuario WHERE nombre= '$_POST[usuario]'");
    
$comprobar2mysql_query("SELECT id FROM villa WHERE nombre= '$_POST[villa]'");
      
$comprobar3mysql_query("SELECT id FROM guerrero WHERE nombre= '$_POST[guerrero]'");
      if (
mysql_num_rows($comprobar1)> 0)
          
header("location: ../index.php?pagina=inscripcion&proceso=erroneo&descripcion=El nombre de usuario indicado ya esta siendo usado");
      else if (
mysql_num_rows($comprobar2)> 0)
        
header("location: ../index.php?pagina=inscripcion&proceso=erroneo&descripcion=El nombre de villa indicado ya esta siendo usado");
      else if (
mysql_num_rows($comprobar3)> 0)
          
header("location: ../index.php?pagina=inscripcion&proceso=erroneo&descripcion=El nombre de guerrero indicado ya esta siendo usado");
      
        
//INSERTAMOS DATOS EN LA BD, SI NO SE PUEDE PUES SE VUELVE AL FORMULARIO PARA QUE SE REINTENTE
        //Insertamos en usuario...
        
$insertar1mysql_query("INSERT INTO usuario values(NULL,'$_POST[usuario]','$_POST[contrasena]','$_POST[correo]'
                                                            ,'$_POST[ubicacion]'"
);
        
$usuario_id_datosmysql_query("SELECT id FROM usuario WHERE nombre= '$_POST[usuario]'");
        
$usuario_idmysql_fetch_array($usuario_id_datos);
        if (!
$insertar1)
        {
            
header("location: ../index.php?pagina=inscripcion&proceso=erroneo&descripcion=Error en inserccion de datos (usuario)");
        }
    
//Insertamos en villa...
        
$insertar2mysql_query("INSERT INTO villa values('$usuario_id[id]','$_POST[villa]','$_POST[medio]','$_POST[actitud]'");
        if (!
$insertar2)
        {
            
mysql_query("DELETE FROM usuario WHERE nombre= '$_POST[usuario]'");
            
header("location: ../index.php?pagina=inscripcion&proceso=erroneo&descripcion=Error en inserccion de datos (villa)");
        }
        
//Insertamos en guerrero...
        
$insertar3mysql_query("INSERT INTO guerrero values('$usuario_id[id]','$usuario_id[id]','$_POST[nombre]')");
        if (!
$insertar3)
        {
            
mysql_query("DELETE FROM usuario WHERE nombre= '$_POST[usuario]'");
            
mysql_query("DELETE FROM villa WHERE nombre= '$_POST[villa]'");
            
header("location: ../index.php?pagina=inscripcion&proceso=erroneo&descripcion=Error en inserccion de datos (ejercito)");
        }
        
//Insertamos en ejercito...
      
$insertar4mysql_query("INSERT INTO ejercito values('$usuario_id[id]')");
        if (!
$insertar4)
        {
            
mysql_query("DELETE FROM usuario WHERE nombre= '$_POST[usuario]'");
            
mysql_query("DELETE FROM villa WHERE nombre= '$_POST[villa]'");
            
mysql_query("DELETE FROM guerrero WHERE nombre= '$_POST[guerrero]'");
            
header("location: ../index.php?pagina=inscripcion&proceso=erroneo&descripcion=Error en inserccion de datos (guerrero)");
        }
?>
Como veran en cada inserccion, si esta falla, vuelvo al formulario con una descripcion para saber donde ha fallado, pues si quito una inserccion, fallara la anterior, si quito esta otra, fallara la anterior... asi que el problema no creo que este en la inserccion es otra cosa... y el enlace a la conexion a la bd esta bien.. ¿que puede estar mal?
gracias

Última edición por astut; 20/06/2007 a las 10:21
  #2 (permalink)  
Antiguo 20/06/2007, 05:38
Avatar de kaninox  
Fecha de Ingreso: septiembre-2005
Ubicación: In my House
Mensajes: 3.597
Antigüedad: 19 años, 2 meses
Puntos: 49
Re: Mi codigo php falla

pues ya del principio estamos mal



o se if ($_POST)no es nada debe tener algo relacionado como un boton o variable
if ($_POST[enviar])

por ej.. no digo que no te funcione pero asi no es correcto programar...
lo otro tus comprobar usan [] corchetes que son usados para arreglos, tambien no es correcto usarlos si no van a guardar un arreglo, deberias haber puesto solo $comprobar1 y ya esta...
esta parte if (!$insertar[1])
:/ no la entiendo si es distinto a $insertar1 pero que :/
siempre se cumple y pasa igual para que esta entonces :/
o esta definiendo esto en otra parte... bueno al caso ...

que error te manda el codigo, pongale los correspondiente or die a sus ingresos y le enviara los errores ;)
ya nos los comenta si es error de codigo o bien son de mal puesta alguna variable....
__________________
Gokuh Salvo al mundo. PUNTO!!!!
  #3 (permalink)  
Antiguo 20/06/2007, 05:40
Avatar de kaninox  
Fecha de Ingreso: septiembre-2005
Ubicación: In my House
Mensajes: 3.597
Antigüedad: 19 años, 2 meses
Puntos: 49
Re: Mi codigo php falla

para mas especificaciones de por que falla el codigo use

error_reporting(E_ALL); y tambien
ini_set('display_errors', true);
__________________
Gokuh Salvo al mundo. PUNTO!!!!
  #4 (permalink)  
Antiguo 20/06/2007, 10:21
 
Fecha de Ingreso: septiembre-2005
Ubicación: Valencia
Mensajes: 738
Antigüedad: 19 años, 2 meses
Puntos: 5
Re: Mi codigo php falla

Ya hice lo que me dijistes y sige igual.. si quito un INSERT me dara error el anterior a este y asi sucesivamente... no entiendo porque, ¿alguien puede ayudarme? gracias!
  #5 (permalink)  
Antiguo 20/06/2007, 10:29
Avatar de darkasecas  
Fecha de Ingreso: marzo-2005
Ubicación: SantaCata, NL, Mexico
Mensajes: 1.553
Antigüedad: 19 años, 8 meses
Puntos: 77
Re: Mi codigo php falla

Hasta donde se, no puedes meter variables elementos de arrays dentro de una cadena, necesitas sacarlo de la cadena y concatenarla
Código PHP:
$comprobar1mysql_query("SELECT id FROM usuario WHERE nombre= '".$_POST['usuario']."'"); 
y asi
  #6 (permalink)  
Antiguo 20/06/2007, 11:07
 
Fecha de Ingreso: septiembre-2005
Ubicación: Valencia
Mensajes: 738
Antigüedad: 19 años, 2 meses
Puntos: 5
Re: Mi codigo php falla

no, llevo toda la vida haciendolo como el codigo que puse y siempre ha funcionado.. saludos
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 14:14.