Ver Mensaje Individual
  #3 (permalink)  
Antiguo 30/12/2004, 12:39
Cluster
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 4 meses
Puntos: 129
Esto de aquí:
while (($damefila=mysql_fetch_object($resultid)) && ($num_filas<5))

no deberías hacerlo así .. sino limitando vía SQL los registros que quieres mostar.

De hecho ya lo haces en:
//ordeno la sentencia y limito el numero de resultados
$ssql .= " ORDER BY id_librovisitas_php desc limit 6";

Por otro lado:

Código PHP:
if (isset($_GET["vermas"])){
$ssql .= " where id_librovisitas_php='".$vermas."'";
} else {
//ordeno la sentencia y limito el numero de resultados
$ssql .= " ORDER BY id_librovisitas_php desc limit 6";

si tu le pasas un "ID" de un registro (que es único) a una consulta condicional (bajo el WHRE) .. .lo que pretendes es ver ese único registro .. así que <= no correspondería .. no tiene sendido para ese caso .. lo mismo que ordenar o limitar los resultado (he de ahí el else) .. sólo vas a obtener un resultado (registro) o bien ningúno (caso de que ese ID no exista).

Tu opción "damemas" supongo que pretenderás ver desplegado otros registros que no muestras en tu resumen y listado inicial ..?

Si es así .. debes hacer otra consulta SQL bajo el if (isset($_GET["vermas"])) donde hagas la consulta SQL que ya compones ahí mismo .. la ejecutes y presentes sus registros de la forma que tengas que hacerlo ..

Sobre los problemas que tienes .. cuando haces una consulta SQL ... lo ideal es contar los resultados que has obtenido antes de "atacar" tu mysql_fetch_xxx() .. así no tendrás problemas y podrás mostrar un mensaje tipo "no hay mensajes en el libro de visitas" .. o "mensaje no existe"...

Código PHP:
// etc ...

// cuentas los registros que arrojó tu consulta ejecutada.
if (mysql_num_rows($resultid)>0){

// si hay resultados .. entonces los recorres ...
while ($damefila=mysql_fetch_object($resultid)) {

// etc ...

//cierras el if 
(realmente está muyyyy lioso el código .. organizalo mejor, te recomiendo usar estructuras condicionales switch() se vería más claro y organizado tu código además que más rápido para ampliar "funcionalidades" a tu aplicacion.)

Un saludo,

Última edición por Cluster; 30/12/2004 a las 12:43