Tema: No mostrar
Ver Mensaje Individual
  #6 (permalink)  
Antiguo 20/07/2008, 18:26
pcadict0
 
Fecha de Ingreso: abril-2008
Mensajes: 70
Antigüedad: 16 años, 1 mes
Puntos: 1
Respuesta: No mostrar

Solucionado!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Nuevamente gracias a tod@s (y en especial a derkenuke, sin cuya colaboración jamás podría haber llegado a resolverlo) por vuestra desinteresada ayuda.

Les dejo aquí el código en una página q funciona. Si quieren más datos sobre la tabla o cualquier cosa, posteen y encantado se los comentaré (a ver si aunque sea x una vez soy yo quién resuelve las dudas d otro y lo ayuda )

Código PHP:
<?php virtual('/Connections/base.php'); ?>
<?php
$colnamel_sin_zona 
"1";
if (isset(
$_GET['loc'] )) {
  
$colnamel_sin_zona = (get_magic_quotes_gpc()) ? $_GET['loc']  : addslashes($_GET['loc'] );
}
$colnamebg_sin_zona "1";
if (isset(
$_GET['bg'])) {
  
$colnamebg_sin_zona = (get_magic_quotes_gpc()) ? $_GET['bg'] : addslashes($_GET['bg']);
}
mysql_select_db($database_base$base);
$query_sin_zona sprintf("SELECT * FROM clientes WHERE info like '%%%s%%' AND localidad like '%%%s%%' "$colnamebg_sin_zona,$colnamel_sin_zona);
$sin_zona mysql_query($query_sin_zona$base) or die(mysql_error());
$row_sin_zona mysql_fetch_assoc($sin_zona);
$totalRows_sin_zona mysql_num_rows($sin_zona);

$colnamez_con_zona "1";
if (isset(
$_GET['zona']                              )) {
  
$colnamez_con_zona = (get_magic_quotes_gpc()) ? $_GET['zona']                               : addslashes($_GET['zona']                              );
}
$colnamel_con_zona "1";
if (isset(
$_GET['loc']    )) {
  
$colnamel_con_zona = (get_magic_quotes_gpc()) ? $_GET['loc']     : addslashes($_GET['loc']    );
}
$colnamebg_con_zona "1";
if (isset(
$_GET['bg'])) {
  
$colnamebg_con_zona = (get_magic_quotes_gpc()) ? $_GET['bg'] : addslashes($_GET['bg']);
}
mysql_select_db($database_base$base);
$query_con_zona sprintf("SELECT * FROM clientes WHERE info like '%%%s%%' AND localidad like '%%%s%%' AND zona like '%%%s%%'"$colnamebg_con_zona,$colnamel_con_zona,$colnamez_con_zona);
$con_zona mysql_query($query_con_zona$base) or die(mysql_error());
$row_con_zona mysql_fetch_assoc($con_zona);
$totalRows_con_zona mysql_num_rows($con_zona);
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="es" lang="es"> 
<head> 
<meta http-equiv="Content-type" content="text/html;charset=iso-8859-1" /> 
<meta name="Author" content="derkeNuke y una pequena aportacion d pcadict0" /> 
<title>combobox</title> 
<style type="text/css"> 

</style> 
</head> 

<body> 



               <form name="frm" method="GET" action="/combobox_definitivo.php">
               <select name="loc" title="<?php echo $row_sin_zona['localidad']; ?>" onchange="cambiar(this.form.zona)">
                 <option value="%%" <?php if (!(strcmp("%%"$_GET['loc']))) {echo "selected=\"selected\"";} ?>>Cualquier ubicación</option>
                 <option value="Agaete" <?php if (!(strcmp("Agaete"$_GET['loc']))) {echo "selected=\"selected\"";} ?>>Agaete</option>
                 <option value="Aguimes" <?php if (!(strcmp("Aguimes"$_GET['loc']))) {echo "selected=\"selected\"";} ?>>Aguimes</option>
               </select>
               <?php if($_GET['loc'] == 'Agaete') { ?>
               <select name="zona" style="visibility: visible;"> 
               <option value="%%" <?php if (!(strcmp("%%"$_GET['zona']))) {echo "selected=\"selected\"";} ?>>Cualquier ubicación</option>
               <option value="(Puerto de Las Nieves)" <?php if (!(strcmp("(Puerto de Las Nieves)"$_GET['zona']))) {echo "selected=\"selected\"";} ?>>Puerto de Las Nieves</option>
               <option value="(Valle de Agaete)" <?php if (!(strcmp("(Valle de Agaete)"$_GET['zona']))) {echo "selected=\"selected\"";} ?>>Valle de Agaete</option>
               </select> 
               <?php ?>    
               
               <?php if($_GET['loc'] == 'Aguimes') { ?>
               <select name="zona" style="visibility: visible;"> 
               <option value="%%" <?php if (!(strcmp("%%"$_GET['zona']))) {echo "selected=\"selected\"";} ?>>Cualquier ubicación</option>
               <option value="(Villa de Agüimes)" <?php if (!(strcmp("(Villa de Agüimes)"$_GET['zona']))) {echo "selected=\"selected\"";} ?>>Villa de Agüimes</option>
               <option value="(Cruce de Arinaga)" <?php if (!(strcmp("(Cruce de Arinaga)"$_GET['zona']))) {echo "selected=\"selected\"";} ?>>Cruce de Arinaga</option>
               <option value="(Playa de Arinaga)" <?php if (!(strcmp("(Playa de Arinaga)"$_GET['zona']))) {echo "selected=\"selected\"";} ?>>Playa de Arinaga</option>                       
               <option value="(Polígono industrial de Arinaga)" <?php if (!(strcmp("(Polígono industrial de Arinaga)"$_GET['zona']))) {echo "selected=\"selected\"";} ?>>Polígono industrial de Arinaga</option>                          
               </select> 
               <?php ?>    
               
               <?php if($_GET['loc'] == '%%') { ?>
               <select name="zona" style="visibility: hidden;"> 
               <option value="%%" <?php if (!(strcmp("%%"$_GET['zona']))) {echo "selected=\"selected\"";} ?>>Cualquier ubicación</option>
               </select> 
               <?php ?>    

               
               <label>
               <input name="bg" type="text" id="bg" />
               </label>
               <input type="submit" name="Submit" value="Enviar" />
</form> 


<script type="text/javascript"> 

<!-- 


function addOpt(oCntrl, iPos, sTxt, sVal){ 
    var selOpcion=new Option(sTxt, sVal); 
    eval(oCntrl.options[iPos]=selOpcion); 

function cambiar(oCntrl){ 
    while (oCntrl.length) oCntrl.remove(0); 
    oCntrl.style.visibility="visible"; 
    switch (document.frm.loc.selectedIndex){ 
        case 0: 
        addOpt(oCntrl.style.visibility="hidden", 0, "","AAA");  
        break; 
        case 1: 
        addOpt(oCntrl, 0, "Cualquier ubicación", "%%"); 
        addOpt(oCntrl, 1, "Puerto de las Nieves", "(Puerto de Las Nieves)"); 
        addOpt(oCntrl, 2, "Valle de Agaete", "(Valle de Agaete)"); 
        break; 
        case 2: 
        addOpt(oCntrl, 0, "Cualquier ubicación", "%%"); 
        addOpt(oCntrl, 1, "Villa de Agüimes", "(Villa de Agüimes)"); 
        addOpt(oCntrl, 2, "Cruce de Arinaga", "(Cruce de Arinaga)"); 
        addOpt(oCntrl, 3, "Playa de Arinaga", "(Playa de Arinaga)"); 
        addOpt(oCntrl, 4, "Polígono industrial de Arinaga", "(Polígono industrial de Arinaga)"); 
        break; 
    } 




// --> 
</script>
   <?php if($_GET['zona'] == '') { ?> 
<?php do { ?>
  <table width="100%" border="3" cellspacing="0" cellpadding="0">
    <tr>
      <td valign="top"><p>&nbsp;</p>
      <p></p></td>
      <td valign="top"><?php echo $row_sin_zona['localidad']; ?><?php echo $row_sin_zona['zona']; ?></td>
      <td valign="top"><?php echo $row_sin_zona['info']; ?></td>
    </tr>
  </table>
  <?php } while ($row_sin_zona mysql_fetch_assoc($sin_zona)); ?>
       <?php ?>    
       
   <?php if($_GET['zona'] != '') { ?> 
<?php do { ?>
  <table width="100%" border="3" cellspacing="0" cellpadding="0">
    <tr>
      <td valign="top"><p>&nbsp;</p>
      <p></p></td>
      <td valign="top"><?php echo $row_con_zona['localidad']; ?><?php echo $row_con_zona['zona']; ?></td>
      <td valign="top"><?php echo $row_con_zona['info']; ?></td>
    </tr>
  </table>
  <?php } while ($row_con_zona mysql_fetch_assoc($con_zona)); ?>
       <?php ?>               
       
       
                  
               <?php if($_GET['zona'] == '') { ?> 
               zona
               <?php ?>    
               
               <?php if($_GET['zona'] != '') { ?> 
               zona2
               <?php ?>                                  
                              
</p>
</body> 
  <?php
  mysql_free_result
($sin_zona);

mysql_free_result($con_zona);
  
?>  


</html>
Les paso a explicar lo más importante:
Dado q no sabía cómo hacer para q pasase el valor del campo "zona" cuando ésta no se mostraba (pues no había ninguna correspondencia del campo "loc", q es el responsable de las opciones del campo "zona"); lo q he hecho es poner 2 juegos d registros, uno para el caso d q exista un valor d URL llamado "zona"; y otro juego d registros para el otro caso: cuando no exista nada llamado "zona" en la URL. Es una solución extremadamente "cutre", pero q resuelve sin necesidad d grandes conocimientos este tipo d problemas, q seguro q otras personas también se habrán encontrado.

Gracias otra vez a tod@s x hacer d estas páginas lo q son en la actualidad.
Salu2