Tengo una consulta en la que debo mostrar una serie de datos por medio de un while. Hasta aquí perfecto, los datos se muestran según mi criterio de búsqueda. El tema es que quiero que, en caso de que no existan registros, el script muestre el mensaje de que "no existen registros". Es esto último lo que no me funciona. Primero intenté poner un if... else... dentro del while pero al ejecutar la consulta en caso de "verdadero" mostraba los datos pero en caso de "falso" no mostraba el mensaje. Pensando después en que el while se ejecuta sólo si la sentencia es verdadera, moví el if... else... a continuación del while pero ahora el mensaje de que no hay datos nunca desaparece, aún cuando sí encuentre registros y los muestre.
En definitiva, lo que quiero es mostrar el mensaje de que no hay datos en caso de que el while no encuentre registros.
Código PHP :
$consulta = "select tabla1.*, tabla2.* from tabla1, tabla2 where tabla1.campo1 = tabla2.campo1 and tabla2.campo1 = '".($_SESSION['usuario'])."' order by tabla1.campo3 desc"; $resultado = mysql_query($consulta) or die(mysql_error()); while($resultado_consulta = mysql_fetch_array($resultado)) { echo $resultado_consulta['campo1']; echo $resultado_consulta['campo2']; } //código para mostrar en caso de que no existan datos en la bd if(empty($resultado_consulta)) { echo "no existen registros"; }El problema es que una vez fuera del while $resultado_consulta pierde su contenido. Por ejemplo, con un echo $resultado_consulta['campo1']; dentro del while me muestra el dato, pero fuera del mismo ya no. Es por eso que mi if muestra siempre el mensaje de error, porque en efecto al estar fuera del while la variable está vacía. Estoy seguro que el error está en la sintaxis pero no logro dar con la forma correcta.
Agradeciendo de antemano vuestra ayuda,
Buena Caza y Largas Lunas.