Ver Mensaje Individual
  #21 (permalink)  
Antiguo 08/12/2013, 14:37
vosk
 
Fecha de Ingreso: agosto-2012
Mensajes: 601
Antigüedad: 12 años, 3 meses
Puntos: 83
Respuesta: Cambiar contenido de una variable mediante if

Tienes que poner un poco de tu parte, cuando trabajas con php tienes que poder corregir errores de sintaxi; una cosa: no lo puse mal expresamente, se me colaron un par de parentesis pero que deberias haber podido corregirlo sin problemas.

Te cuelgo un esqueleto basico para que veas lo que hay y lo que hace, asi podras adaptarlo a tu codigo (llamalo moda.php):

Código PHP:
Ver original
  1. <?php
  2. //lista de filtros
  3. $opciones = array(
  4.         "Todos los artículos",
  5.         "Hombre - Ropa",
  6.         "Hombre - Complementos",
  7.         "Hombre - Calzado",
  8.         "Mujer - Ropa",
  9.         "Mujer - Complementos",
  10.         "Mujer - Calzado",
  11.         "Niñ@s"
  12.         );
  13.  
  14. //filtro por defecto
  15. $default_selectapar = $opciones[0];
  16.  
  17. //primero verificas si ejecuta el php desde una POST
  18. if(($selectapar = (isset($_POST['selectapar']))? $_POST['selectapar'] : NULL) === NULL) {
  19.     //si el anterior resultado fue nulo pruebas con el GET
  20.     if(($selectapar = (isset($_GET['selectapar']))? $_GET['selectapar'] : NULL) === NULL) {
  21.         //y si el anterior vuelve a ser nulo asignas el que hay por defecto
  22.         $selectapar = $default_selectapar;
  23.     }
  24. }
  25. ?>
  26. <html>
  27.     <head></head>
  28.     <body>
  29.         <form>
  30.             <select name="selectapar" autofocus id="selectapar" onchange="this.form.submit()">
  31.             <option value="selecc"selected disabled>Seleccionar...</option>
  32.             <?php
  33.             foreach($opciones as $opcion) {
  34.                 echo "<option value=\"".$opcion."\"";
  35.                 if(!strcmp($selectapar, $opcion)) {
  36.                     echo " selected";
  37.                 }
  38.                 echo ">".$opcion."</option>";
  39.             }
  40.             ?>
  41.             </select>
  42.         </form>
  43.        
  44.         <?php
  45.         echo "<a href='moda.php?num=".($pagina-1)."&selectapar=".$selectapar."'>Anterior</a> ";
  46.         echo "<a href='moda.php?num=". ($pagina+1) ."&selectapar=".$selectapar."'>Siguiente</a> ";
  47.         ?>
  48.     </body>
  49. </html>

Comprueba que por defecto te da el filtro 'Todos', y tanto si cambias el filtro como si navegas por el mapa de paginas siempre recuerda la opcion.

Saludos
vosk