
13/12/2012, 06:34
|
| | Fecha de Ingreso: diciembre-2012
Mensajes: 75
Antigüedad: 12 años, 3 meses Puntos: 2 | |
Raro raro raro Hola buenas,
Este es mi primer post en el foro y espero que no sea el ultimo.
El caso es que tengo un problema un poco raro de esos que miras 20 veces y no ves pero que seguro que alguien de un vistazo me da la solucion.
Tengo estos dos arrays declarados:
Código:
$arrayProvincias = array ("alava" ,"laCoruna" ,"albacete" ,"alicante" ,"almeria" ,"asturias" ,"avila" ,"badajoz" ,"barcelona" ,"burgos" ,"caceres" ,"cadiz" ,"cantabria" ,"castellon" ,"ceuta" ,"ciudadReal" ,"cordoba " ,"cuenca" ,"gerona" ,"granada" ,"guadalajara" ,"guipuzcoa" ,"huesca" ,"huelva" ,"baleares" ,"jaen" ,"laRioja" ,"lasPalmas" ,"leon" ,"lerida" ,"lugo" ,"madrid" ,"malaga" ,"melilla" ,"murcia" ,"navarra" ,"orense" ,"palencia" ,"pontevedra" ,"salamanca" ,"segovia" ,"sevilla" ,"soria" ,"tarragona" ,"tenerife" ,"teruel" ,"toledo" ,"valencia" ,"valladolid" ,"vizcaya" ,"zamora" ,"zaragoza");
$arrayTipos = array (" a " ," b " ," c " ," d " ," f " ," g " ," h " ," i " ," j " ," k " ," l " ," m " ," n " ," o " ," p " ," q " ," r " );
y despues los uso asi
Código:
$sql ="select empresa, mail from filtroClientes where ";
for ($i=0;$i<= 51;$i++){
if ($datos[$i]=='on'){
$sql.= $arrayProvincias[$i];
$sql .= " = 'on' and (";
}
}
for ($i=52;$i<= 68;$i++){
if ($datos[$i]=='on'){
if ($flag==1){
$sql .= " or ";
}
$sql .= $arrayTipos[$i];
$sql .= " = 'on' ";
$flag = 1;
}
}
$sql .= ") ";
Para constriur una sentencia sql dinamica.
El caso es que cuando imprimo la sentencia para ver que ****** pasa.. el primer for lo hace bien y muestra por ejemplo barcelona = 'on' pero en el segundo que debe reconocer los tipos solo muestra = 'on' cuando deberia mostrar por ejemplo a = 'on';
Esta es una de las salidas que da:
Código:
select empresa, mail from filtroClientes where guadalajara = 'on' and ( = 'on' )
Un saludo y espero que me puedan ayudar!! |