Foros del Web » Programando para Internet » PHP »

Query se ejecuta dos veces

Estas en el tema de Query se ejecuta dos veces en el foro de PHP en Foros del Web. Hola a todos, espero que me puedad ayudar pue sya estoy varias horas con esto y no encuentro una explicación, tengo un inconveniente en el ...
  #1 (permalink)  
Antiguo 24/08/2009, 14:14
 
Fecha de Ingreso: noviembre-2008
Ubicación: lima
Mensajes: 148
Antigüedad: 15 años, 5 meses
Puntos: 0
Exclamación Query se ejecuta dos veces

Hola a todos, espero que me puedad ayudar pue sya estoy varias horas con esto y no encuentro una explicación, tengo un inconveniente en el siguiente script PHP, el problema es que yo hago una inserccion en la base de datos con la variable $sql, pero el inconveniente es que inserta doble registro, y no veo porque.

Este script recibe las variables de un formulario y es el encargado de insertarlo en la BD, pero hace la insercion 2 veces la 1ra solo inserta el id(es autoincrement) y la 2da inserta todos los datos.

Código PHP:
<?
require_once ('../session.php');
require_once(
'../conexion.php');

import_request_variables("GP");
$nro_reclamo=$_POST['id'];
$id=$nro_reclamo;



 
$archivo $_FILES["arriba"]['name'];
   
$prefijo substr(md5(uniqid(rand())),0,6);
   
$extension explode(".",$archivo);
        
$num count($extension)-1;
        
$nombre=basename($archivo,".".$extension[$num]);//nombre base del archivo
        
$imagen=$nombre."_".$prefijo.".".$extension[$num];//nombre real de la imagen
        
if ($archivo != "")
         {
            
$ext=strtolower($extension[$num]);
            if(
$ext=='jpg')
            {
                
$destino =  "Fotos/".$imagen;
                
$arriba $imagen;                
                if (
copy($_FILES['arriba']['tmp_name'],$destino))
                {
                    
$status_original "Archivo almacenado satisfactoriamente";
                } 
                else 
                {
                    
$status "Error: No se logro subir Archivo";
                }
            } else 
            {
                    
$status "Error: Solo se permiten archivos de tipo (*.jpg)";
            }
        } else {

            
$status "Error: Archivo no encontrado para subir al Servidor";
        }


//fin de hallar imagen

$fotografia=$arriba;

$observacion=$_POST['observacion'];
$reparacion=$_POST['reparacion'];
 if(
$reparacion=='si')
 {
     
$detalle=$_POST['destino'];
 }
 if(
$reparacion=='no')
 {
     
$detalle=$_POST['situacion'];
 }

$situacion='2';
$marca=$_POST['marca'];
$modelo=$_POST['modelo'];
$color=$_POST['color'];
$talla=$_POST['talla'];
$proveedor=$_POST['prov'];
$material=$_POST['material'];


$num rand();
$num2 rand();
$num3 rand();
$identificador="$num"."$num2"."$num3";

$sql="insert into detalle_reclamo values('','".$nro_reclamo."','".$fotografia."','".$observacion."','".$reparacion."'";
$sql.=",'".$detalle."','".$situacion."','".$marca."','".$modelo."','".$color."','".$talla."','".$proveedor."','".$material."','".$identificador."')";

mysql_query($sql) or die(mysql_error());

/*


$consulta="SELECT * , adddate( fecha, 7 ) AS entrega, adddate( fecha, 9 ) AS maximo, DATE_FORMAT( fecha , '%d-%m-%Y') as fechota FROM reclamo WHERE id='".$nro_reclamo."'";
$resul=mysql_query($consulta);
$row=mysql_fetch_assoc($resul);

//inserto vale_reparacion

$sql2="insert into vale_devolucion values('','".$nro_reclamo."',NOW())";
mysql_query($sql2) or die(mysql_error());
$sql3="update reclamo set situacion='2' where id='".$nro_reclamo."'";
mysql_query($sql3);

$query="select * from detalle_reclamo where identificador='".$nro_reclamo."' order by id desc";
$rs=mysql_query($query);
$filas=mysql_fetch_assoc($rs);*/
?>
  #2 (permalink)  
Antiguo 24/08/2009, 14:30
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años
Puntos: 1517
Respuesta: Query se ejecuta dos veces

Lo hace siempre o a veces. Si es siempre puede que el error esta en el codigo, pero si es a veces es problema posiblemente del navegador. Lee esto si estas usando firefox para insertar los datos http://www.forosdelweb.com/f18/imped...-veces-717585/
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 24/08/2009, 14:36
 
Fecha de Ingreso: noviembre-2008
Ubicación: lima
Mensajes: 148
Antigüedad: 15 años, 5 meses
Puntos: 0
Respuesta: Query se ejecuta dos veces

Uso IE 6 y mi aplicacion esta en mi servidor local, osea solo yo estoy que la pruebo, pero reviso el codigo y no doy con el error y esto sucede siempre

Otra sugerencia.
  #4 (permalink)  
Antiguo 24/08/2009, 14:40
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años
Puntos: 1517
Respuesta: Query se ejecuta dos veces

¿De casualidad tienes algun javascript ejecutando algun submit? Hay veces que uno trata de darle a submit y en el form declara en el parametro onsubmit una funcion de javascript pero que tambien en el javascript le digo submit() esto hace que envie dos veces el form primero por el normal que es submit y el otro por el javascript.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #5 (permalink)  
Antiguo 24/08/2009, 15:00
 
Fecha de Ingreso: noviembre-2008
Ubicación: lima
Mensajes: 148
Antigüedad: 15 años, 5 meses
Puntos: 0
Respuesta: Query se ejecuta dos veces

Gracias, abimaelrc.

Era lo que mencionaste , un doble submit.
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.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 20:05.