Hola mi duda es la siguiente :
Se puede meter en una variable sesion el contenido de un array??
Como se haría?Y luego como se accedería a cada elemento del array dentro de la variable sesion?
Gracias.
| |||
Duda con sesiones Hola mi duda es la siguiente : Se puede meter en una variable sesion el contenido de un array?? Como se haría?Y luego como se accedería a cada elemento del array dentro de la variable sesion? Gracias. |
| |||
Respuesta: Duda con sesiones Hola, gracias pero no me ha servido, o porque lo he hecho mal o porque para lo que yo quiero no sirve. Te cuento un poco más de lo que va la cosa, yo tengo en una base de datos una serie de videos y los muestro mediante paginacion, hasta ahi sin problemas. Pero tengo un buscador en la página a modo de filtro para que los usuarios puedan elegir ver videos de una determinada categoría o tema. El problema viene cuando hago la búsqueda, la página 0 me la muestra bien con los videos que tocan según a la elección del usuario, pero cuando le doy a ver al página 1 me muestra la página una de todos los vídeos sin ningún filtro. Y he leido por ahí que eso se hace con sesiones, pero es que no se como... Puedes ayudarme?? Gracias. Aqui pongo el código sin sesiones:
Código:
$videos= 4; $pagina = $HTTP_GET_VARS['pag']; if (empty($pagina)){$limite =0;} else {$limite = $pagina * $videos;} if(isset($_REQUEST['buscador'])){ if(($_POST['buscatema']==0)&& ($_POST['buscacategoria']==0)){ $consulta = mysql_query("SELECT url,id_corto FROM cortos ORDER BY id_corto ASC LIMIT $limite,$videos"); //AQUI VA EL CÓDIGO PARA MOSTRAR LOS VÍDEOS } elseif(($_POST['buscatema']==1)&& ($_POST['buscacategoria']==0)){ $consulta = mysql_query("SELECT url,id_corto FROM cortos WHERE id_tema = '1' ORDER BY id_corto ASC LIMIT $limite,$videos"); //AQUI VA EL CÓDIGO PARA MOSTRAR LOS VÍDEOS } elseif(($_POST['buscatema']==1)&& ($_POST['buscacategoria']==1)){ $consulta = mysql_query("SELECT url,id_corto FROM cortos WHERE id_tema = '1' AND id_categoria ='1' ORDER BY id_corto ASC LIMIT $limite,$videos"); //AQUI VA EL CÓDIGO PARA MOSTRAR LOS VÍDEOS } elseif(($_POST['buscatema']==1)&& ($_POST['buscacategoria']==2)){ $consulta = mysql_query("SELECT url,id_corto FROM cortos WHERE id_tema = '1' AND id_categoria ='2' ORDER BY id_corto ASC LIMIT $limite,$videos"); //AQUI VA EL CÓDIGO PARA MOSTRAR LOS VÍDEOS } elseif(($_POST['buscatema']==2)&& ($_POST['buscacategoria']==0)){ $consulta = mysql_query("SELECT url,id_corto FROM cortos WHERE id_tema = '2' ORDER BY id_corto ASC LIMIT $limite,$videos"); //AQUI VA EL CÓDIGO PARA MOSTRAR LOS VÍDEOS } elseif(($_POST['buscatema']==2)&& ($_POST['buscacategoria']==1)){ $consulta = mysql_query("SELECT url,id_corto FROM cortos WHERE id_tema = '2' AND id_categoria ='1' ORDER BY id_corto ASC LIMIT $limite,$videos"); //AQUI VA EL CÓDIGO PARA MOSTRAR LOS VÍDEOS } elseif(($_POST['buscatema']==2)&& ($_POST['buscacategoria']==2)){ $consulta = mysql_query("SELECT url,id_corto FROM cortos WHERE id_tema = '2' AND id_categoria ='2' ORDER BY id_corto ASC LIMIT $limite,$videos"); //AQUI VA EL CÓDIGO PARA MOSTRAR LOS VÍDEOS } elseif(($_POST['buscatema']==0)&& ($_POST['buscacategoria']==1)){ $consulta = mysql_query("SELECT url,id_corto FROM cortos WHERE id_categoria ='1' ORDER BY id_corto ASC LIMIT $limite,$videos"); //AQUI VA EL CÓDIGO PARA MOSTRAR LOS VÍDEOS } elseif(($_POST['buscatema']==1)&& ($_POST['buscacategoria']==2)){ $consulta = mysql_query("SELECT url,id_corto FROM cortos WHERE id_corto = '1' AND id_categoria ='2' ORDER BY id_corto ASC LIMIT $limite,$videos"); //AQUI VA EL CÓDIGO PARA MOSTRAR LOS VÍDEOS } else{ $consulta = mysql_query("SELECT url,id_corto FROM cortos ORDER BY id_corto ASC LIMIT $limite,$videos"); //AQUI VA EL CÓDIGO PARA MOSTRAR LOS VÍDEOS } $inicio = 0; $consulta = mysql_query("SELECT * FROM cortos"); $cantidad = mysql_num_rows($consulta); echo "Páginas: " ; echo "<a href='".$_SERVER["PHP_SELF"]."?cat=videos&pag=" . $inicio . "'>".$inicio."</a>"; for($i=1;$i<=$cantidad/4;$i++){ echo "<a href='".$_SERVER["PHP_SELF"]."?cat=videos&pag=" . $i . "'>".$i."</a>"; } ?> </div> </div> <div class="column_1"> <p> </p> <div class="indent"> <p><span class="titulo">Buscador</span><br /> <img src="images/spacer.gif" alt="" width="1" height="18" /><br /> </p> <p> </p> <p> </p> <p> </p> <form id="form3" name="form3" method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>"> <label>Tema:<br /> <select name="buscatema" id="buscatema"> <option value="0" selected="selected"></option> <option value="1">Brecha Digital</option> <option value="2">Basura Electrónica</option> </select> </label> <p> </p> <p> <label>Categoría <br /> <select name="buscacategoria" id="buscacategoria"> <option value="0" selected="selected"></option> <option value="1">Documental</option> <option value="2">Ficción</option> </select> </label> </p> <p> </p> <p> <label> <input type="submit" name="buscador" id="buscador" value="Actualizar Vista" /> </label> </p> </form> <p><br /> <img src="images/spacer.gif" alt="" width="1" height="18" /></p> </div> </div> <div class="clear"></div> </div> <div class="fill"> <div class="top_mob"> <div class="bot_mob"> <div class="column_4"> </div> </div> </div> </div> </div> </body> </html> |
| ||||
Respuesta: Duda con sesiones pero no te seria mas sencillo pasar esos filtros con dos select de html y pasar por POST esos dos valores y hacer un solo query??? siempre seleccionas los mismos campos de la misma tabla de la BD, creo que se podria hacer con un solo query, porque cuantos son los filtros??? |
| ||||
Respuesta: Duda con sesiones Prueba algo a si es la idea, termina de implantartelo a tu codigo, espero que te pueda servir Código PHP: |
| ||||
Respuesta: Duda con sesiones si no has de pasar las variables a otra pagina que no sea esa no haran falta sesiones pero si tu problema era el paginar, tendras problemas Te aconsejo que uses la clase de paginado de jpinedo,el PAGINATOR, facil de usar, busca en google |