En general .. si haces:
Código PHP:
$asunto = mysql_result($resultat_sql, 0,"asunto") or die (mysql_error());
podrás ver los errores de SQL o conexión que tengas ..
Pero, .. para lo que parece que estás haciendo .. tienes las funciones:
mysql_fetch_xxxx() que se usan bajo un bucle tipo while()
Ejemplo
Código PHP:
while (mysql_fech_array($resultado)){
echo $row['campo_nombre'];
echo $row['otro_campo_nombre'];
}
Eso sería un ejemplo para recorrer un resultado de una consulta SQL ejecutada que sabes que te va a devolver de 1 a N registros (por eso es bueno usar además mysql_num_rows() como ya usas para verificar si la consulta SQL arrojó 0 o más registros "record-set").
Puedes anidar estos bucles si obtienes mysql_query() diferenes.
Pero .. volviendo al problema principal .. Si tienes dos tablas que se relacionan bajo ese tabla1.pid=tabla2.id
Puedes hacer una sóla consulta SQL (eso sí . más compleja) para obtener los resulados que necesites tipo:
Código PHP:
$sql="SELECT tabla2.asunto,tabla2.texto FROM tabla1,tabla2 WHERE tabla1.pid=tabla2.id WHERE tabla1.pid='14'";
(y mejor todavía con un "JOIN" de SQL).
Así tan sólo harías:
Código PHP:
// conectas a tu BD.. etc ...
$resultado=mysql_query($sql) or die (mysql_error());
if (mysql_num_rows >0){
while ($row=mysql_fetch_array($resultado)){
echo $row['asunto']."<br>";
echo $row['texto']."<br>";
}
} else {
echo "No hay resultados";
}
Un saludo,