Foros del Web » Creando para Internet » HTML »

Casilla de verificacion obligatoria

Estas en el tema de Casilla de verificacion obligatoria en el foro de HTML en Foros del Web. Buenos dias, necesito que el usuario marque obligatoriamente que esta de acuerdo con las condiciones para que el enlace "entrar" lo direccione al interior del ...
  #1 (permalink)  
Antiguo 19/06/2011, 09:12
 
Fecha de Ingreso: agosto-2010
Mensajes: 215
Antigüedad: 6 años, 10 meses
Puntos: 6
Casilla de verificacion obligatoria

Buenos dias, necesito que el usuario marque obligatoriamente que esta de acuerdo con las condiciones para que el enlace "entrar" lo direccione al interior del sitio, de lo contrario que le diga que no puede ingresar, se que es un input:
"<input type="checkbox" />Entrar" pero no se que se debe hacer para que sea obligatorio y el enlace de entrar se active o rechaze segun sea el caso, me podrian ayudar?
  #2 (permalink)  
Antiguo 19/06/2011, 12:50
 
Fecha de Ingreso: agosto-2010
Mensajes: 215
Antigüedad: 6 años, 10 meses
Puntos: 6
Respuesta: Casilla de verificacion obligatoria

Si algun moderador me hace el favor y mueve este tema a javascript que creo es con lo que se logra lo que necesito, talvez por eso en este foro no me pueden ayudar, gracias.

Última edición por rex16; 19/06/2011 a las 17:05
  #3 (permalink)  
Antiguo 20/06/2011, 00:06
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 10 años
Puntos: 1567
Respuesta: Casilla de verificacion obligatoria

Rex16
Javascript puede ser desactivado desde el navegador del cliente, mejor hacerlo con php.


Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #4 (permalink)  
Antiguo 20/06/2011, 06:15
 
Fecha de Ingreso: agosto-2010
Mensajes: 215
Antigüedad: 6 años, 10 meses
Puntos: 6
Respuesta: Casilla de verificacion obligatoria

Amigo emprear y me podrias dar una idea de como se hace con php, es que yo no se ...

EDITO: encontre esto pero tiene algunos errores en el script de procesar.php:

formulario.html
Cita:
<form method="post" action="procesar.php">
<!-- El resto de los datos del formulario y al final... -->
<input type="checkbox" name="condiciones" />
<input type="submit" value="Entrar" />
</form>
procesar.php:
Cita:
<?php
if(!isset($_POST['condiciones']) {
print '<p style="color: red">DEBE aceptar las condiciones de uso</p>';
exit;
}
else {
// El resto de las instrucciones a ejecutar...
}
?>
el las lineas de if y else (dreamweaber), ademas siempre imprime el mensaje este o no este marcada la casilla del input mas otro pedazo del codigo.

Última edición por rex16; 20/06/2011 a las 06:46
  #5 (permalink)  
Antiguo 20/06/2011, 10:58
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 10 años
Puntos: 1567
Respuesta: Casilla de verificacion obligatoria

Hola Rex16
primero tu sintáxis tiene este error
if(!isset($_POST['condiciones']) { , le falta un segundo paréntesis al final, segundo, yo lo haria asi mejor


El formulario

Código HTML:
Ver original
  1. <form method="post" action="procesar.php">
  2.  <!-- El resto de los datos del formulario y al final... -->
  3.  <input type="checkbox" name="condiciones" value="ok" />
  4.  <input type="submit" value="Entrar" name="formulario_terminos" />
  5.  </form>

el php

Código PHP:
Ver original
  1. <?php
  2. if(isset($_POST['formulario_terminos'])) {
  3. if ($_POST['condiciones'] != "ok"){
  4.     echo "error";
  5.     exit();
  6. }else{
  7. echo "sigo procesando";
  8. }
  9. }
  10. ?>

Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #6 (permalink)  
Antiguo 20/06/2011, 13:13
 
Fecha de Ingreso: agosto-2010
Mensajes: 215
Antigüedad: 6 años, 10 meses
Puntos: 6
Respuesta: Casilla de verificacion obligatoria

Gracias, ya habia logrado hacer funcionar el otro pero mejor uso el tuyo, otra cosa, logre hacer la redireccion con javascript:
Cita:
echo'<script language="javascript">window.location="http://www.google.com"</script>';
se puede hacer que el mensaje de alerta:
Cita:
echo 'No haz aceptado';
se muestre en una ventana tipo popup o debo hacer un div con un enlace de vuelta y maquetarlo con css...
  #7 (permalink)  
Antiguo 20/06/2011, 13:39
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 10 años
Puntos: 1567
Respuesta: Casilla de verificacion obligatoria

rex16:

Habria que ver todo el conjunto de tu sistema, de todas maneras, analicemos lo siguiente:
Tu objetivo primario es que si no aceptan, sean redirigidos

Muy bien, javascript, lo pueden deshabilitar...
Se podria hacer algo con CSS.... tambien lo pueden deshabilitar...

lo más fiable e imposible de evitar, hacerlo con el propio php

<?php
if(isset($_POST['formulario_terminos'])) {
if ($_POST['condiciones'] != "ok"){
header(Location: error.php);
exit();
}else{
echo "sigo procesando";
}
}
?>

Así de simple. No te complpiques con cosas que te alejen de tu objetivo principal.
Lo que estás haciendo en definitiva es una "validación de formularios"
muchos para esto utilizan javascript, Ajax, incluso ahora html5, yo me sigo inclinando por hacerlo del lado del servidor, con php


Otro detalle, si bien es una cuestión de gustos, yo pongo el form y el procesador en el mismo php, y no redirijo salvo que se cumpla el proceso correctamente
El siguiente ejemplo, no tiene un checkbox, pero es exactamente los mismo

http://bariloche-apart.com.ar/form/form.php

nota: al final del proceso te indica un error porque es una demo y index1.html no existe


Hay muchas variantes a todo esto y cosas mas complejas, este es solo un sistema para que te des una idea


Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #8 (permalink)  
Antiguo 20/06/2011, 14:21
 
Fecha de Ingreso: agosto-2010
Mensajes: 215
Antigüedad: 6 años, 10 meses
Puntos: 6
Respuesta: Casilla de verificacion obligatoria

Creo que la excelenta ayuda que me das no se adapta a lo que tengo:


si el usuario quiere salir, pincha en salir y se va a gogle, si acepta los terminos y entra lo redireccione con el trozo de javascript, pero si no marca la casilla y pincha en entrar seria donde deveria aparecer el popup advirtiendo pero no llevarlo a ninguna parte, dejarlo ahi.
el php
Cita:
<?php
if(isset($_POST['formulario_terminos'])) {
if ($_POST['condiciones'] != "ok"){
echo 'Aqui ira el codigo del popup o el enlace para que se devuelva y acepte o se vaya.';
exit();
}else{
echo'<script language="javascript">window.location="http://www.misitio.com"</script>';
}
}
?>
  #9 (permalink)  
Antiguo 20/06/2011, 14:57
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 10 años
Puntos: 1567
Respuesta: Casilla de verificacion obligatoria

A ver algo asi


Código PHP:
Ver original
  1. if(isset($_POST['formulario_terminos'])) {
  2.  if ($_POST['condiciones'] != "ok"){
  3.  
  4. echo<<< JS
  5. <script type="text/javascript">
  6. <!--
  7.  
  8. var respuesta= confirm("texto informando que si no acepta terminos....bla bla bla");
  9. if (respuesta){
  10. window.location = "http://www.google.com/";
  11. }
  12.  
  13. //-->
  14. </script>
  15. JS;
  16. }else{
  17. header('Location: http://misitio.com');
  18. }
  19. }

estás usando confirm en lugar de alert, con lo cual ya generas la opcion de continuar, o quedarse en la página y tildar el checkbox

Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #10 (permalink)  
Antiguo 20/06/2011, 16:58
 
Fecha de Ingreso: agosto-2010
Mensajes: 215
Antigüedad: 6 años, 10 meses
Puntos: 6
Respuesta: Casilla de verificacion obligatoria

Si funciona pero mientras se visualiza el popup de fondo se muesta la pantalla blanca del archivo procesar.php y se queda ahi, y al clicar el alguna de sus opciones empieza a cargar nuevamente la pagina, mejor armo un div que vaya con el diseño y le pongo un enlace de retroceso y no me complico tanto la vida
Mil gracias por tu ayuda porque solo sabia que era un input...

(se fue la electricidad por eso la demora en responder)

Etiquetas: checkbox, marcar, obligatorio, verificacion
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 20:39.