Regresar a la página www.ComoCrearTuWeb.com
Página 1 de 3 123 ÚltimoÚltimo
Resultados 1 al 15 de 40

Tema: script, para que no te manden formularios en blanco

  1. #1
    Moderador CCTW Habitante Avatar de Yaneth
    Fecha de Ingreso
    27 abr, 07
    Ubicación
    Mèxico
    Mensajes
    10,701
    Poder de Reputación
    69

    script, para que no te manden formularios en blanco

    Hola a todos
    pongo está pequeña aportación
    aclaro que no es del todo mia
    (no soy tan buena como para crear algo asi)

    pero la he modificado en base a varias páginas visitadas
    espero a alguien le sirva

    creo que se me olvida aclarar para que sirve

    Esto se agrega, para evitar que alguien curioso, le de click a enviar a un formulario, y no nos mande nada

    jajajja

    hasta aqui supongo que ya tienes tu formulario hecho, y que ya probaste que funciona, de lo contrario no servira de nada OK??

    Tambien tu formulario debe tener un name por ejemplo asi:

    <form action="pagina.php" method="post" name="frm">
    ok, pues en donde tienes el boton de enviar (del formulario)
    tendrás algo asi:

    <input type="submit" name="submit" value="Enviar" />
    bueno, pues ahora le diremos que al darle clik en enviar, primero cheque quue todos los campos esten llenos, de lo contrario nos mande un alerta
    asi:

    <input type="button" value="Enviar" onclick="valida_envia()" />

    y ahora pongo el script, que ha de hacer el trabajo pesado
    este lo podemos copiar en cualquier parte de la página web
    ya sea entre <body> y </body> o entre <head> y </head>


    [quote]<script language="JavaScript" type="text/JavaScript">

    function valida_envia(){
    if(document.frm.nombre.value == "") {
    alert("Por favor indique Su Nombre");
    document.frm.nombre.focus();
    return 0;
    }

    if(document.frm.poblacion.value == "") {
    alert("Por favor indique Su Ciudad");
    document.frm.poblacion.focus();
    return 0;
    }


    if(document.frm.email.value == "") {
    alert("Por favor indica un E-Mail valido, para enviarle su respuesta");
    document.frm.email.focus();
    return 0;
    }

    if(document.frm.texto.value == "") {
    alert("Por favor indica un Mensaje");
    document.frm.texto.focus();
    return 0;
    }



    alert("Muchas gracias por enviar el formulario");
    document.frm.submit();
    return true;
    }
    </script>

    donde en rojo está puesto el nombre del formulario
    y en verde el nombre del campo que queremos sea obligatorio
    en este caso son:

    nombre, ciudad, email y mensaje



    yy, a peticion de ustedes jej
    busque y rebusque, hasta encontrar que tampoco nos puedan mandar espacios en blanco (ya que la barra espaciadora tambien cuenta como caracter)

    asi que encontrè esto

    onChange="javascript:while(''+this.value.charAt(0) ==' ')this.value=this.value.substring(1,this.value.len gth);"

    todo eso se pone aqui

    <input name="email" type="text" id="

    email" maxlength="20" onChange="javascript:while(''+this.value.charAt(0) ==' ')this.value=this.value.substring(1,this.value.len gth);"/>

    en rojo, lo que hace es evitar que nos manden puros espacios en blanco

    saludos
    ______________________________________

    reparacion de rines


    _____________________________________

  2. #2
    Es que hay vida fuera de CCTW? Habitante
    Fecha de Ingreso
    05 oct, 07
    Ubicación
    Sevilla - España
    Mensajes
    4,624
    Poder de Reputación
    38
    Está muy bien, y seguro que le resulta útil a más de uno, con todos los que andan buscando hacer formularios.
    Yo lo utilizaré en mi próximo formulario, porque no me acuerdo como lo hacía yo, jeje

  3. #3
    Recien Llegado! Merodeador
    Fecha de Ingreso
    06 oct, 08
    Mensajes
    3
    Poder de Reputación
    0

    Gracias

    Gracias Yaneth por tu aportación. Es muy útil.

    Al principio no me funcionaba 100%. Cuando me avisaba de que tenía que indicar un nombre pulsaba en aceptar del mismo mensaje de aviso y acto seguido me mandaba el formulario vacío. Se ha solucionado cuando he revisado el nombre de las variables. A veces hay que ir probando sobre todo cuando eres novato en esto como yo.

    Un saludo!

    Edito:
    Una pregunta, tengo un formulario con los campos: nombre, telefono, email y consulta. Bien, pues dejo en la función del código que has puesto nombre y consulta igual. Pero me gustaría hacer que telefono e email sólo fueran obligatorios uno de los dos. Es decir, estando vacío telefono e email saldría un alert "por favor introduzca un teléfono o email de contacto." pero en cuanto exista uno de los dos campos llenos ya no pida nada más. Si es mucho lío lo siento. Gracias de antemano.

  4. #4
    Moderador CCTW Habitante Avatar de Yaneth
    Fecha de Ingreso
    27 abr, 07
    Ubicación
    Mèxico
    Mensajes
    10,701
    Poder de Reputación
    69
    mmmmm

    interesante......

    si gustas..... lo intentamos ok???????

    ______________________________________

    reparacion de rines


    _____________________________________

  5. #5
    Recien Llegado! Merodeador
    Fecha de Ingreso
    06 oct, 08
    Mensajes
    3
    Poder de Reputación
    0
    Por mí perfecto. Ya me funciona el código que pusiste y con eso me conformo solo que el formulario de mi página está pensado para clientes que no tengan una cuenta de correo o no estén muy familiarizados con la informática entonces si conseguimos lo que te propongo nada más sería necesario que el cliente aportara un teléfono y en el caso de preferir no facilitarlo pues ya se le preguntaría por el email que al fin al cabo sin ninguno de estos datos la consulta a la empresa sería de un fantasma.

    Espero pacientemente. Gracias por tu tiempo.

  6. #6
    Moderador CCTW Habitante Avatar de Yaneth
    Fecha de Ingreso
    27 abr, 07
    Ubicación
    Mèxico
    Mensajes
    10,701
    Poder de Reputación
    69
    Hola

    al fin, y despues de muchas pruebas lo logrè

    si gustas probarlo està en

    http://www.reparacionderines.com/ayuda2.html

    y el codigo està aqui

    <script language="JavaScript" type="text/JavaScript">

    function valida_envia(){
    if(document.frm2.nombre.value == "") {
    alert("Por favor indique Su Nombre");
    document.frm2.nombre.focus();
    return 0;
    }

    if(document.frm2.email.value == "" && document.frm2.telefono.value == ""){
    alert("Por favor indique Su EMAIL o su TELEFONO");
    document.frm2.email.focus();
    return 0;
    }



    alert("Muchas gracias por enviar el formulario");
    document.frm2.submit();
    return true;
    }

    saludos
    ______________________________________

    reparacion de rines


    _____________________________________

  7. #7
    Recien Llegado! Merodeador
    Fecha de Ingreso
    06 oct, 08
    Mensajes
    3
    Poder de Reputación
    0
    Buen trabajo Yaneth. Después de varios intentos no daba con el lenguaje y nada más probar el tuyo ha funcionado a la primera. Visto escrito parece simple pero hay que saber.

    Valoro tu amabilidad y tu tiempo. Me has ayudado a mejorar mi web. Confío en que le sirva de ayuda a más personas.

    Por cierto, me ha impresionado lo rápida que has sido. ¡Mil gracias! y ánimo con tus aportaciones. Estaré atento por si puedo compartir algo interesante.

  8. #8
    Moderador CCTW Habitante Avatar de Yaneth
    Fecha de Ingreso
    27 abr, 07
    Ubicación
    Mèxico
    Mensajes
    10,701
    Poder de Reputación
    69
    es un placer

    saludos
    ______________________________________

    reparacion de rines


    _____________________________________

  9. #9
    Recien Llegado! Merodeador
    Fecha de Ingreso
    21 mar, 09
    Ubicación
    Buenos Aires, Argentina
    Mensajes
    4
    Poder de Reputación
    0

    Evitar espacios en blanco en Formulario

    Hola Yaneth.... En primer lugar, gracias por tu desinteresado aporte...
    Te cuento, tengo una página con un formulario ya creado y como es obvio este "valida, o sea se asegura, de que el internauta proporcione la información esperada en cada campo" y lo hace bien. Sin embargo lamentablemente hay muchos, pero muchísimos internautas que no entiendo con que fin -excepto el de molestar- se dedican a enviar los Formularios en Blanco. Me está ocurriendo exactamente esto, que cuando el formulario le pide que indique un dato, en vez de tipear algo, sólo pulsan la barra espaciadora del teclado y como informáticamente hablando, esa acción es también un caracter alfanumérico, pasa la prueba de la validación toda vez que no se tipeó nada y por lo tanto el formulario termina siendo procesado y enviado en blanco. Entonces, evidentemente hay que agregarle algún srcipt adicional que no permita o acepte que el Formulario sea llenado pulsando la barra espaciadora. Tu, ¿por casualidad sabes como lograrlo? Desde ya muchas gracias.

  10. #10
    Moderador CCTW Habitante Avatar de Yaneth
    Fecha de Ingreso
    27 abr, 07
    Ubicación
    Mèxico
    Mensajes
    10,701
    Poder de Reputación
    69
    mm seguro que si debe haber algo de eso

    pero... si el visitante, igual no desea mandarte nada
    y no le dejas usar espacios en blanco
    `pues te pondra cosas como esta

    slkdjsalsjkfñasdfjkl

    asi que... por mmas obstaculos que pongamos, si lo desean pueden hacer sus "maldades" lo del scrpt para mandar espacios en blanco es mas que nada para.... evitar errores de dedo, y que den click en enviar accidentalmente

    saludos
    ______________________________________

    reparacion de rines


    _____________________________________

  11. #11
    Recien Llegado! Merodeador
    Fecha de Ingreso
    21 mar, 09
    Ubicación
    Buenos Aires, Argentina
    Mensajes
    4
    Poder de Reputación
    0

    Como evitar el uso de la barra espaciadora en un formulario

    Hola Yaneth...

    Me imágine que recibiría una respuesta como la tuya... Incluso pensé, antes de presentar la situación, ser más específico y detallista pero me dije a mi mismo, mmm quizás detalle tanto lo que estoy intentando lograr que en vez de que me entienda me termine respondiendo ¿qué es lo que quieres hacer realmente?. Que lástima pues por ser más simple en mi presentación al final terminé recibiendo una respuesta que supuse que sería tal cual la tuya. Pero ahora seré más claro e iré directamente a lo que pretendo llegar. La idea es que cuando el internauta comience a llenar cada campo del formulario se haga una validación tal "que le impida empezar a proporcionar los datos pulsando la barra espaciadora" ¿Porqué? Muy simple, en primer lugar porque jamás va a existir el nombre, descripción, identificación, etc. de algo que empiece con un caracter en blanco, eso no se da en ningún idoma del mundo... En segundo lugar porque cuando él quiera hacer eso, si es que lo hace con "mala intención" se dará cuenta en seguida que eso no se puede hacer. Tengo dos clientes que les hice su sitio web con Formulario y ambos han recibido ya varias veces Formularios en Blanco y me recriminan por esto. No entienden que se hace por maldad y ambos me dicen: ¿pero como es posible que no escriban nada, ni siquiera estupideces? Es decir ellos preferirían recibir jeroglíficos como los que tu usastes de ejemplo antes de recibir NADA. De lo anterior se desprende entonces que este objetivo debo lograrlo si o si. Por favor si no sabes como lograr los scripts de esto dímelo y veo por otro lado, OK
    Sin perjuicio de lo anterior, agradezco tu preocupación y respuesta acerca del tema.

  12. #12
    Recien Llegado! Pasaba por aquí...
    Fecha de Ingreso
    14 abr, 09
    Mensajes
    2
    Poder de Reputación
    0

    POR FAVOR AYUDENME LLEVO DIAS EN ESTO

    implemente el que tienes con las siguientes condiciones

    para año , mes, dia , hora , minutos de un formulario el formato debe ser en el mes 01, 02, o 03 etc, igualmente en los dias pero cuando ingreso a partir del 08 me sale el alerta de mes incorrecto que puede estar pasando me estoy dando golpe y naaa


    mira el codigo:




    <html>
    <head>
    <title>Modificar Fecha EXE Movimientos</title>
    <meta http-equiv="Content-Type" content="text/html"; charset="iso-8859-1" />
    <link rel='stylesheet' type='text/css' href='style.css' />
    <script language="JavaScript">
    var no_digito = /\D/g;
    <!-- function para que no me deje ingresar caracteres
    function mis_datos(){
    var key=window.event.keyCode;
    if (key < 48 || key > 57){
    window.event.keyCode=0;
    }}


    function valida_envia(){



    if(document.formulario.jus.value == "" ) {
    alert("Por favor ingrese la justificación");
    document.formulario.jus.focus();
    return 0;
    }

    if(document.formulario.ano.value == "" || parseInt(document.formulario.ano.value) < 2005) {
    alert("Año incorrecto");
    document.formulario.ano.focus();
    return 0;
    }

    if(document.formulario.mes.value == "" || parseInt(document.formulario.mes.value)< 1 || parseInt(document.formulario.mes.value) > 12 ) {
    alert("Mes incorrecto");
    document.formulario.mes.focus();
    return 0;
    }

    if(document.formulario.dia.value == "" || parseInt(document.formulario.dia.value)< 1 || parseInt(document.formulario.dia.value ) > 31) {
    alert("dia Incorrecto");
    document.formulario.dia.focus();
    return 0;
    }

    if(document.formulario.hor.value == "" || parseInt(document.formulario.hor.value) > 24 ) {
    alert("Hora incorrecta1");
    document.formulario.hor.focus();
    return 0;
    }

    if(document.formulario.min.value == "" || parseInt(document.formulario.min.value) > 59 ) {
    alert("Hora incorrecta2");
    document.formulario.min.focus();
    return 0;
    }


    if(document.formulario.mes.value.length != 2 || document.formulario.min.value.length != 2 || document.formulario.hor.value.length != 2 || document.formulario.dia.value.length != 2)
    {

    alert("Incorrecto");
    document.formulario.mes.focus();
    return 0;



    }


    document.formulario.submit();
    return true;
    }
    </script>
    </head>

    <body>





    <table width="50%" border="0" align="center">
    <tr>
    <td><div align="center"><H5>INGRESE NUEVOS DATOS</H5></div></td>
    </tr>
    <tr>
    <td><form action="GuardaFechaExeMov.php" method="post" name="formulario" id="formulario">

    <table width="90%" border="0" align="center" cellpadding="0" cellspacing="0" bordercolor="">
    <tr><td> <input type="hidden" name="ListaIdMovs" value="<? echo $ListaIdMovs;?>">
    <input type="hidden" name="cnt" value="<? echo $cnt;?>">
    <input type="hidden" name="mov" value="<? echo $mov;?>">
    <input type="hidden" name="tipoMov" value="<? echo $tipoMov;?>">
    <input type="hidden" name="est" value="<? echo $est;?>">
    <input type="hidden" name="long" value="<? echo $long;?>">
    <input type="hidden" name="tipoOrd" value="<? echo $tipoOrd;?>">
    <input type="hidden" name="refOrd" value="<? echo $refOrd;?>">
    </td>
    </tr>
    <tr>
    <td>Fecha</td>
    <td colspan="2"><input name="ano" type="text" size="3" maxlength="4" onkeyup="this.value = this.value.replace(no_digito, '')"value="<? echo Date(Y)?>">/
    <input name="mes" type="text" size="1" maxlength="2"onkeyup="this.value = this.value.replace(no_digito, '')" value="<? echo Date(m)?>">/
    <input name="dia" type="text" size="1" maxlength="2" onkeyup="this.value = this.value.replace(no_digito, '')"value="<? echo Date(d)?>">
    </td>
    </tr>
    <tr>
    <td>Hora</td>
    <td colspan="2"><input name="hor" type="text" size="1" maxlength="2" onkeyup="this.value = this.value.replace(no_digito, '')"value="<? echo Date(H)?>">:
    <input name="min" type="text" size="1" maxlength="2" onkeyup="this.value = this.value.replace(no_digito, '')"value="00">

    </td>
    </tr>
    <td>Justificacion</td>
    <td colspan="2"><input name="jus" type="text" size="35" maxlength="40" value="Error del Distribuidor">

    </td>
    </tr>
    <tr>
    <td></td>
    <td><input type="button" name="Submit5" onclick="valida_envia()" value="Actualizar!"></td>

    <td><input type="reset" name="Submit6" value="Limpiar"></td>
    </tr>
    </table>
    </form></td>
    </tr>
    </table>
    <?
    }

  13. #13
    Moderador CCTW Habitante Avatar de Yaneth
    Fecha de Ingreso
    27 abr, 07
    Ubicación
    Mèxico
    Mensajes
    10,701
    Poder de Reputación
    69
    hola

    Nicklord
    sigues ahi??????

    sorry, que no habia visto este tema
    hasta que...... me està llegando correos en blanco jajajajajaja
    del que puse como ejemplo aqui

    ok, la explicacion que me diste me parece perfectisima
    y seguro que algo hay para eso

    ahora.... solo dime algo
    ya lo tienes???????
    de lo contrario, pongo manos a la obra jeje

    saludos
    ______________________________________

    reparacion de rines


    _____________________________________

  14. #14
    Moderador CCTW Habitante Avatar de Yaneth
    Fecha de Ingreso
    27 abr, 07
    Ubicación
    Mèxico
    Mensajes
    10,701
    Poder de Reputación
    69
    hola

    mss_lobaton85:

    ya subiste tu formulario??????

    dame la url para verlo en vivo y a todo color jejeje
    tal vez demos con el fallo

    saludos
    ______________________________________

    reparacion de rines


    _____________________________________

  15. #15
    Esto empieza a ser un vicio... Habitante
    Fecha de Ingreso
    28 jun, 08
    Mensajes
    499
    Poder de Reputación
    16

    javascript ---- Mala idea

    Bueno yo tengo algunos formularios en mis web, y casi no uso javascript por la simple razon de que si te mandan un correo en blanco es porque estan jugando solamente, y si es asi la intencion es molestar nada mas, yo prefiero validar todo en el php, porque el javascript se puede desabilitar y enviar correos en blanco, mejor validado con php, el usuario no podra vurlar las validaciones, ademas de que no caeria mal una imagen antispam.

Temas Similares

  1. TERMINE MI DIRECTORIO MANDEN SUS LINK
    Por VILL4RRR3LL en el foro Intercambio de enlaces
    Respuestas: 1
    Último Mensaje: 28/11/2009, 03:20
  2. ¿Sabeis script utiles para formularios?
    Por Miquel en el foro Formularios
    Respuestas: 9
    Último Mensaje: 26/08/2009, 14:17

Permisos de Publicación

  • No puedes crear nuevos temas
  • No puedes responder temas
  • No puedes subir archivos adjuntos
  • No puedes editar tus mensajes
  •