Foros del Web » Programando para Internet » PHP »

Como Evitar los Incontables Isset

Estas en el tema de Como Evitar los Incontables Isset en el foro de PHP en Foros del Web. if(!isset($dia_01)){$dia_01 = '';} if(!isset($dia_02)){$dia_02 = '';} if(!isset($dia_03)){$dia_03 = '';} if(!isset($dia_04)){$dia_04 = '';} if(!isset($dia_05)){$dia_05 = '';} if(!isset($dia_06)){$dia_06 = '';} if(!isset($dia_07)){$dia_07 = '';} if(!isset($dia_08)){$dia_08 = '';} if(!isset($dia_09)){$dia_09 ...
  #1 (permalink)  
Antiguo 30/08/2004, 08:24
Avatar de don_fransisco  
Fecha de Ingreso: junio-2004
Mensajes: 193
Antigüedad: 20 años, 5 meses
Puntos: 1
Como Evitar los Incontables Isset

if(!isset($dia_01)){$dia_01 = '';}
if(!isset($dia_02)){$dia_02 = '';}
if(!isset($dia_03)){$dia_03 = '';}
if(!isset($dia_04)){$dia_04 = '';}
if(!isset($dia_05)){$dia_05 = '';}
if(!isset($dia_06)){$dia_06 = '';}
if(!isset($dia_07)){$dia_07 = '';}
if(!isset($dia_08)){$dia_08 = '';}
if(!isset($dia_09)){$dia_09 = '';}
if(!isset($dia_10)){$dia_10 = '';}
if(!isset($dia_11)){$dia_11 = '';}
if(!isset($dia_12)){$dia_12 = '';}
if(!isset($dia_13)){$dia_13 = '';}
if(!isset($dia_14)){$dia_14 = '';}
if(!isset($dia_15)){$dia_15 = '';}
if(!isset($dia_16)){$dia_16 = '';}
if(!isset($dia_17)){$dia_17 = '';}
if(!isset($dia_18)){$dia_18 = '';}
if(!isset($dia_19)){$dia_19 = '';}
if(!isset($dia_20)){$dia_20 = '';}
if(!isset($dia_21)){$dia_21 = '';}
if(!isset($dia_22)){$dia_22 = '';}
if(!isset($dia_23)){$dia_23 = '';}
if(!isset($dia_24)){$dia_24 = '';}
if(!isset($dia_25)){$dia_25 = '';}
if(!isset($dia_26)){$dia_26 = '';}
if(!isset($dia_27)){$dia_27 = '';}
if(!isset($dia_28)){$dia_28 = '';}
if(!isset($dia_29)){$dia_29 = '';}
if(!isset($dia_30)){$dia_30 = '';}
if(!isset($dia_31)){$dia_31 = '';}


Hola Alguien me puede Decir Como poder Evitar los Incontables Isset en Un Formulario que Contenga Multiples campos.

Gracias
  #2 (permalink)  
Antiguo 30/08/2004, 08:27
Avatar de José Molina  
Fecha de Ingreso: enero-2002
Ubicación: USA
Mensajes: 768
Antigüedad: 22 años, 10 meses
Puntos: 1
Saludos.

Utiliza un for:

for ($i=1;$i<=31;$i++) {
if(!isset($dia_[$i])){$dia_[$i] = '';}
}

Suerte
__________________
José Molina
La marginalidad no esta en la incapacidad de calmar el hambre de un estómago sino en la incapacidad de calmar el hambre de la mente.
  #3 (permalink)  
Antiguo 30/08/2004, 08:54
Avatar de don_fransisco  
Fecha de Ingreso: junio-2004
Mensajes: 193
Antigüedad: 20 años, 5 meses
Puntos: 1
me entendistes mal, explicare mejor mi problema, resulta que tengo un formulario del 50 text y tengo que comprobar con isset() 50 veces, mi pregunta es como puedo comprobar la misma funcion (isset()) con un foreach.


¿existe algun ejemplo de script con Foreach?

Última edición por don_fransisco; 30/08/2004 a las 12:50
  #4 (permalink)  
Antiguo 30/08/2004, 09:43
Avatar de don_fransisco  
Fecha de Ingreso: junio-2004
Mensajes: 193
Antigüedad: 20 años, 5 meses
Puntos: 1
¿nadie sabe?

es correcto hacer algo como esto

$variables=array("nombre","pais","direccion","corr eo","Asunto","Mensaje");

if (isset($_POST)) {
foreach ($_POST as $k => $v) {
if ( !in_array($k,$variables) ){
${$k} = $v;
}
}

o asi:
$miarray=array("nombre","pais","comuna","asunto");
foreach($_POST as $m=>$miarray){
if(!isset($miarray)){
echo "valor no existe<br>";
}else{
echo "valor existe ;$miarray<br>";
}
}

nadie mas puede orientarme

Última edición por don_fransisco; 30/08/2004 a las 10:16
  #5 (permalink)  
Antiguo 30/08/2004, 10:29
Avatar de don_fransisco  
Fecha de Ingreso: junio-2004
Mensajes: 193
Antigüedad: 20 años, 5 meses
Puntos: 1
¿o bien hay que preguntar si viene de un array ante de hacer un foreach por seguridad?

$miarray=array("nombre","pais","comuna","asunto"," Submit");
foreach($_POST as $clave=>$valor){
if(!in_array($clave,$miarray)){
echo "no proviene de un array<br>";
}else{
if(!isset($valor)){
echo "valor no existe<br>";
}else{
echo "valor existe :$valor<br>";

}
}
}

alguien puede orientarme un pco
  #6 (permalink)  
Antiguo 30/08/2004, 12:48
Avatar de don_fransisco  
Fecha de Ingreso: junio-2004
Mensajes: 193
Antigüedad: 20 años, 5 meses
Puntos: 1
que lata nadie me quizo ayudar
  #7 (permalink)  
Antiguo 30/08/2004, 13:36
Avatar de José Molina  
Fecha de Ingreso: enero-2002
Ubicación: USA
Mensajes: 768
Antigüedad: 22 años, 10 meses
Puntos: 1
Ojala y Funcione

Saludos.

A ver si puedo ayudarte.

Si tus valores vienen de un formulario, puedes hacer esto:

Código PHP:
$campos['valor1'] = $post['campo1'];
$campos['valor2'] = $post['campo2'];
$campos['valor3'] = $post['campo3'];
$campos['valor4'] = $post['campo4'];

foreach (
$campos as $key => $value){
   if (
$value!=''){
     
$campo[] = "`" $key "`";
     
$valor[] = "'" $value "'";
   }


y si despues los quieres guardar en una Db:

Código PHP:
$campos implode(",",$campo);
$valores implode(",",$valor);

$sql "insert into TABLA ($campos) VALUES ($valores)"
En serio y ojala te ayude en algo.

Suerte
__________________
José Molina
La marginalidad no esta en la incapacidad de calmar el hambre de un estómago sino en la incapacidad de calmar el hambre de la mente.

Última edición por José Molina; 30/08/2004 a las 13:38
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 14:15.