Foros del Web » Programando para Internet » Javascript »

enviar form con enter

Estas en el tema de enviar form con enter en el foro de Javascript en Foros del Web. hola mi problema en realidad es que al enviar el form al presionar enter no termina de ejecutarme todo el codigo php y me vuelve ...
  #1 (permalink)  
Antiguo 04/09/2009, 09:13
 
Fecha de Ingreso: octubre-2008
Mensajes: 151
Antigüedad: 15 años, 6 meses
Puntos: 1
enviar form con enter

hola mi problema en realidad es que al enviar el form al presionar enter no termina de ejecutarme todo el codigo php y me vuelve a enviar el form ¿puede ser?. porque si envio el form mediante el boton submit anda perfecto en cambio si lo hago al preionar enter me hace cierta parte del codigo php pero no completo y no llega a la parte de redireccionar con javascript, me vuelve a hacer la validacion php y me tira error.
este es el codigo javacsript con el q envio el form:

Código HTML:
<script>
function enter(evt)
{

var charCode = (evt.which) ? evt.which : window.event.keyCode;

if (charCode == 13)
{
document.form1.submit();
}

}

</script> 
con este intente evitar el doble envio pero no funciono:

Código HTML:
<script LANGUAGE="JavaScript">
<!--
var cuenta=0;
function enviado() {
if (cuenta == 0)
{
cuenta++;
return true;
}
else
{
alert("El formulario ya está siendo enviado, por favor aguarde un instante.");
return false;
}
}
// -->
</script>
<form name="form1" id="form1" action="nueva_instalacion.php?id=<? echo $_GET["id"]; ?>" method="post" onSubmit="return enviado()"> 
y este es el php:

Código PHP:
if ( ! empty($_POST))
{
if( $_POST["fecha"] != "" && $_POST["cliente"] != "" && $_POST["marca"] != "" && $_POST["modelo"] != "" && $_POST["cubiculo"] != "" && $_POST["serie_i"] != ""   && $_POST["prueba"])
    {

                
            $sql = "select interno,estado from cubiculos_gascon where numero = '".$_POST["cubiculo"]."'";        
            $resultado = mysql_query($sql);
            while($fila = mysql_fetch_array($resultado))
            {
                $interno = $fila["interno"];
                $estado = $fila["estado"];
                ?>
                    <script>
                    alert('<? echo $estado?>');
                    </script>
                    <?    
            
}
                
    if (
$interno == "0" && $estado == "0")
    {
        
                    
$sql "select estado from cubiculos_gascon where numero = '".$_POST["cubiculo"]."'";
                    
                    
$resultado mysql_query($sql);
                    
                    while (
$row mysql_fetch_array($resultado))
                    {
                        
$estadoCub $row["estado"];    
                    }
                    if(
$estadoCub == 0)
                    {
        
        
                    
$serie_impresora $_POST["serie_i"];
                    
$serie_sistema $_POST["serie_s"];
                    
$cubiculo $_POST["cubiculo"];
                    
$prueba $_POST["prueba"];
                        if(
$prueba == "incorrecto")
                        {
                            
$razon $_POST["falla"];
                            if(
$razon == "impresion")
                            {
                                for(
$i 0;$i <= 6;$i++)
                                {
                                    if(isset(
$_POST["color".$i]))
                                    {
                                        
$colores .= $_POST["color".$i].",";
                                    }
                                }
                            }
                        
                        }
                        
                    if(isset(
$_POST["ch_cubiculo"]))
                    {
                    
$update "update instalaciones set serie_impresora = '$serie_impresora', serie_sistema = '$serie_sistema',cubiculo = '$cubiculo', razon = '$razon', prueba = '$prueba', colores = '$colores', estado = '".$_POST["instalacion"]."', operador = '$_SESSION[registrado]' where id_instalacion = '".$_GET["id"]."'";
                    
                    
$update_cubiculo "update cubiculos_gascon set estado = '1' where numero = '$cubiculo'";
                    
                    
//$actualizar = mysql_query($update_cubiculo);
                    
}else
                    {
                
                    
$update "update instalaciones set serie_impresora = '$serie_impresora', serie_sistema = '$serie_sistema',razon = '$razon', prueba = '$prueba', colores = '$colores', estado = '".$_POST["instalacion"]."', operador = '$_SESSION[registrado]' where id_instalacion = '".$_GET["id"]."'";
                    }
                    
                    
$actualizar mysql_query($update);
                        
                        if(
$_POST["instalacion"] == '2' || isset($_POST["ch_cubiculo"]))
                        {
                        echo 
"
                        <script>
                        
                        window.resizeTo(800,730);
                        location.href='orden.php?id="
.$_GET["id"]."';
                        
                        
                        </script>
                        "
;
                        die();
                        }else
                        {
                            
                            echo 
"
                                <script>                            
                                window.close();                                
                                </script>
                                "
;
                            
                        }
                    }
                    else
                    {
                        
                    echo 
"<font color = 'red'>El cubiculo no esta disponible</font>";
                        
                    }
            
        
        
        }else
        {
            if(
$interno == '1')
            {
            echo 
"<script>
            alert('el cubiculo es interno de la empresa');
            </script>"
;
            }else
            {
                echo 
"<script>
            alert('el cubiculo esta ocupado ');
            </script>"
;                
            }
        }
        
    }
}

muchas gracias

juan manuel
  #2 (permalink)  
Antiguo 04/09/2009, 09:24
 
Fecha de Ingreso: octubre-2008
Mensajes: 151
Antigüedad: 15 años, 6 meses
Puntos: 1
Respuesta: enviar form con enter

acabo de sacar el on loead del body:

Código HTML:
<body onload = 'window.document.form1.serie_i.focus();'> 

y ahora me anda descubri tambien que es cuando entra en la parte mas larga del php q no no anda, ocmo puedo arreglarlo?
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 13:56.