resulta que hago una consulta mysql que me muestra el nombre y precio de un libro y al lado tiene un enlace "detalle" donde nos lleva a otra pagina que nos muestra mas informacion del libro. pero estando en esta pagina detalles, al volver atras pierdo la consulta mysql y no me muestra la lista de libros.
la solucion que plantie es la siguiente:
arranco preguntando si no existe una session llamada libros
la idea es guarda en una session llamada libros TODOS los registros de la consulta.
entonces si no existw la session que muestre los datos de la consulta pero que en una variable de session (arreglo) me guarde los datos.
en cambio si existe la session que me muestre los datos de la varible de session sin hacer la consulta. pero no me funciona correctamente
mi codigo es el siguiente
Código PHP:
session_start();
header ("Cache-Control: no-cache, must-revalidate");
header ("Pragma: no-cache");
include("conectar_mysql.php");
$categ = $_POST['var'];
$resultado = $_GET['resultado'];
$consulta= mysql_query ("SELECT book.bookid, book.titulo, book.autor, book.descripcion, book.precio, book.nomfoto
FROM book, categoria WHERE (categoria.catid = book.catid) and
(categoria.catid= '$categ') ");
$resul= mysql_query ("SELECT count(book.bookid) as canti FROM book, categoria WHERE (categoria.catid = book.catid) and
(categoria.catid= '$categ') ");
while ($f=mysql_fetch_array($resul)) {
$resultado=$f[canti];
}
echo '<div id="myScroll" style="position:static; width:448px; height:191px; z-index:1; left: 26px; top: 59px; overflow: auto;">';
echo '<table border="2" cellpadding="10" align="center">';
echo "<tr>";
echo '<td><span class="Estilo14">TITULO</span></td>';
echo '<td><span class="Estilo14">PRECIO</span></td>';
echo '<td><span class="Estilo14">MAS INFORMACION</span></td>';
echo "</tr>";
$color='#FFDF00';
if (!isset($_SESSION[libros]))
{
while ($fila=mysql_fetch_array($consulta))
{
if ("#F0F0F0"==$color)
{
$color="#FFDF00";
}
else
{
$color='#F0F0F0';
}
echo "<tr bgcolor=\"$color\">";
echo '<td align="center">'.$fila[titulo].'</td>';
echo '<td align="center">'.'$'.$fila[precio].'</td>';
echo '<td align="center"><a href="detalle.php?titulo='.$fila[titulo].'&bookid='.$fila[bookid].
'&precio='.$fila[precio].'&descripcion='.$fila[descripcion].'&foto='.$fila[nomfoto].
'&autor='.$fila[autor].'&r='.$resultado.'">detalle</a></td>';
echo "</tr>";
for($i=0;$i<$resultado;$i++)
{
for($j=0;$j<2;$j++)
{
if ($j==0) {
$_SESSION[libros][$i][$j]=$fila[titulo];
session_start();
}else
{
$_SESSION[libros][$i][$j]=$fila[precio];
session_start();
}
}
exit;
}
}}
else {
for($fil=0;$fil<$resultado;$fil++)
{
for($columna=0;$columna<2;$columna++)
{
if ("#F0F0F0"==$color)
{
$color="#FFDF00";
} else
{
$color='#F0F0F0';
}
echo "<tr bgcolor=\"$color\">";
echo '<td align="center">'.$_SESSION[libros][$fil][$columna].'</td>';
echo $resultado;
}
}
}