Foros del Web » Programando para Internet » PHP »

isset con combos

Estas en el tema de isset con combos en el foro de PHP en Foros del Web. Hola cracks, Tengo una pequeña duda. Tengo varios combos en un formulario y quiero que al recibir los datos, si en alguno de los combos ...
  #1 (permalink)  
Antiguo 21/02/2011, 06:08
 
Fecha de Ingreso: agosto-2009
Mensajes: 216
Antigüedad: 15 años, 4 meses
Puntos: 3
isset con combos

Hola cracks,

Tengo una pequeña duda.

Tengo varios combos en un formulario y quiero que al recibir los datos, si en alguno de los combos no se hizo una elección, me redireccione a una página de error.

Desarrollé un script muy facilito y funciona bien, pero me preguntaba si hay alguna forma más eficiente y mejor de hacerlo (estoy casi seguro de que sí, por eso pregunto jejeje).

Ahora tengo:

Código PHP:
if((!isset($_POST["combo1"])) || (!isset($_POST["combo2"])).......
{
  echo 
'<meta http-equiv="refresh" content = "0; url = paginaError.html">';

Es decir, un !isset por cada uno de los combos...existe alguna manera para que, en cuanto encuentre el primer combo sin elección vaya a la página de error sin hacer un isset por cada combo?? (Es que tengo más de 10 combos).

Gracias!!
  #2 (permalink)  
Antiguo 21/02/2011, 06:36
Avatar de Patriarka  
Fecha de Ingreso: enero-2011
Ubicación: Moreno, Buenos Aires, Argentina
Mensajes: 2.851
Antigüedad: 13 años, 10 meses
Puntos: 288
Respuesta: isset con combos

Hola amigo necesito que envies desde un hidden por POST la catidad de combos.

$i=1;
while($_POST['HID_cantidadCombos']){
if((!isset($_POST["combo".$i])) ){
echo '<meta http-equiv="refresh" content = "0; url = paginaError.html">';
}
$i++;
}

con eso preguntas por todos los combos, si alguno falla te envia al error.
Igual te recomiendo que lo valides con javasrcipt para no estar llendo al servidor por cada post.
  #3 (permalink)  
Antiguo 21/02/2011, 06:54
 
Fecha de Ingreso: junio-2009
Ubicación: Madrid
Mensajes: 402
Antigüedad: 15 años, 6 meses
Puntos: 20
Respuesta: isset con combos

No entiendo muy bien tu pregunta, pero bueno. Probaste con un elseif?

Código PHP:
if((!isset($_POST["combo1"])){
  echo 
'<meta http-equiv="refresh" content = "0; url = paginaError.html">';
}elseif (!isset(
$_POST["combo2"])){
haz esto otro
}elseif (!isset($_POST["combo3"])){
esto otro
.
.

edit:
Leyendo otravez tu post y la respuesta de patriarka, creo que buscas la respuesta de patriarka verdad?
  #4 (permalink)  
Antiguo 21/02/2011, 07:06
Avatar de Patriarka  
Fecha de Ingreso: enero-2011
Ubicación: Moreno, Buenos Aires, Argentina
Mensajes: 2.851
Antigüedad: 13 años, 10 meses
Puntos: 288
Respuesta: isset con combos

Cita:
Iniciado por Patriarka Ver Mensaje
Hola amigo necesito que envies desde un hidden por POST la catidad de combos.

Código PHP:
Ver original
  1. $i=1;
  2. while($i <= $_POST['HID_cantidadCombos']){
  3.   if((!isset($_POST["combo".$i])) ){
  4.        echo '<meta http-equiv="refresh" content = "0; url = paginaError.html">';
  5.   }
  6.    $i++;
  7. }

con eso preguntas por todos los combos, si alguno falla te envia al error.
Igual te recomiendo que lo valides con javasrcipt para no estar llendo al servidor por cada post.
Nota: agregue una condicion al while
  #5 (permalink)  
Antiguo 21/02/2011, 07:09
 
Fecha de Ingreso: agosto-2009
Mensajes: 216
Antigüedad: 15 años, 4 meses
Puntos: 3
Respuesta: isset con combos

Cita:
Iniciado por Patriarka Ver Mensaje
Hola amigo necesito que envies desde un hidden por POST la catidad de combos.

$i=1;
while($_POST['HID_cantidadCombos']){
if((!isset($_POST["combo".$i])) ){
echo '<meta http-equiv="refresh" content = "0; url = paginaError.html">';
}
$i++;
}

con eso preguntas por todos los combos, si alguno falla te envia al error.
Igual te recomiendo que lo valides con javasrcipt para no estar llendo al servidor por cada post.
Hola, gracias por tu ayuda.

Sí, lo suyo sería validarlo con javascript, pero tampoco tengo mucha idea de javascript, podrías darme un ejemplo sencillo de cómo sería?

Muchas gracias a ti también w0rldart ;).

Un saludo!
  #6 (permalink)  
Antiguo 21/02/2011, 07:17
Avatar de AdrianSeg  
Fecha de Ingreso: enero-2010
Mensajes: 595
Antigüedad: 14 años, 10 meses
Puntos: 14
Respuesta: isset con combos

Te dejo un ejemplo sencillo:

Código Javascript:
Ver original
  1. <script language="javascript">
  2. function valida(){
  3.     valor=document.form.combo.value;
  4.     if(valor=='#')
  5.         alert('valor invalido')
  6.     else
  7.         document.form.submit();
  8. }
  9. </script>
  10.  
  11.  
  12.  
  13. <form name="form" method="POST" action="">
  14.   <select name="combo">
  15.     <option value="#">Seleccione una opción</option>
  16.     <option value="1">Opcion 1</option>
  17.     <option value="2">Opcion 2</option>
  18.   </select>
  19.   <input name="Submit" type="button" value=":: Presionar ::" onclick="valida();" />
  20. </form>
  #7 (permalink)  
Antiguo 21/02/2011, 07:19
Avatar de Patriarka  
Fecha de Ingreso: enero-2011
Ubicación: Moreno, Buenos Aires, Argentina
Mensajes: 2.851
Antigüedad: 13 años, 10 meses
Puntos: 288
Respuesta: isset con combos

HACES UN FORM CON UN SELECT
Código HTML:
Ver original
  1. <form name="fvalida">
  2. <select name=interes>
  3.     <option value="Elegir">Elegir
  4.     <option value="Comercial">Contacto comercial
  5.     <option value="Clientes">Atención al cliente
  6.     <option value="Proveedores">Contacto de proveedores
  7.     </select>
  8. </form>
Y CUANDO HACES SUBMIT LLAMA A ESTA FUNCION

Código Javascript:
Ver original
  1. if (document.fvalida.interes.selectedIndex==0){
  2.        alert("Debe seleccionar un interes.")
  3.        document.fvalida.interes.focus()
  4.        return false;
  5.     }
  #8 (permalink)  
Antiguo 21/02/2011, 13:13
 
Fecha de Ingreso: agosto-2009
Mensajes: 216
Antigüedad: 15 años, 4 meses
Puntos: 3
Respuesta: isset con combos

Hey cracks, siento el retraso en contestar, pero he estado todo el día fuera de casa. Voy a ponerme con lo que me habéis dado y ahora os cuento, pero desde ya, muchísimas gracias.

Un saludo!
  #9 (permalink)  
Antiguo 21/02/2011, 13:21
 
Fecha de Ingreso: agosto-2009
Mensajes: 216
Antigüedad: 15 años, 4 meses
Puntos: 3
Respuesta: isset con combos

Vale, ya lo pobré pero me falla una cosilla. Yo tengo 10 selects pero cada uno tiene un nombre diferente. Tendría que hacer 1 función por cada combo, o hay alguna manera genérica de hacerlo??

Muchas gracias por anticipado.

Etiquetas: combos, isset
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 07:04.