Buenas noches,
Se que el usuario, no merece la solución al problema.
Pero he estado leyendome todo el hilo, por que tenia un problema parecido, y he dado con la solución.
Lo dejo aqui, ya no para el, sino para gente como yo que se encuentre con esto.
El unico fallo, como bien decia, estava en la linea 77 pero el problema venia de un poco mas atràs.
Este script, esta creado para los foros phpbb2, y lo estavais intentando hacer funcionar con una base de datos phpbb3.
Dicha base de datos carece de la tabla phpbb_post_text, ya que lo lleva todo incluido en la tabla phpbb_posts.
Simplemente cambiando esto:
Código:
$sql="select post_subject from ".$prefijo."post_text where(post_id='$post_id')";
por esto:
Código:
$sql="select post_subject from ".$prefijo."posts where(post_id='$post_id')";
en la linea 75 lo tenias solucionado.
El script correcto es el siguiente:
Código:
<?php
//Lo primero es asignar un prefijo de tablas.
//Este prefijo es el que elegiste al instalar phpbb (por defecto el prefijo es "phpbb2_"
//Lo puedes mirar examinando la base de datos, las tablas de los foros comienzan por ese prefijo.
//por ejemplo imaginemos que mi prefijo es phpbb2
$prefijo="phpbb_";
//Conectamos con la base de datos:
//cambia los siguientes valores con los tuyos:
$host="localhost";
$usr="usuariobd";
$password="passwdbd";
$error_conexion="No se puede conectar a la base de datos. el error es el siguiente: ";
$conexion= mysql_connect ($host,$usr,$password) or die ($error_conexion . mysql_error());
//seleccionamos la base de datos sobre la que queremos operar:
$bdatos="basededatosdelforo";
//se supone que hemos conectado a la base de datos. Ahora vamos a seleccionar los posts necesarios.
$sql="select post_id,poster_id,post_time,forum_id from ".$prefijo."posts order by post_time desc";
$consulta=mysql_db_query($bdatos,$sql);
//definimos cuantos posts queremos mostrar, en este caso 10:
$numeroposts=10;
//creamos una tabla HTML para meter los datos:
?>
<table>
<tr>
<td colspan='4'>
Últimos posts
</td>
</tr>
<tr>
<td>
Foro
</td>
<td>
Asunto
</td>
<td>
Usuario
</td>
<td>
Fecha
</td>
</tr>
<?php
//Bucle que crea una fila por cada post
$contador=0;
while(($fila=mysql_fetch_array($consulta)) && ($contador<$numeroposts))
{
?>
<tr>
<?php
//primero seleccionamos el nombre del foro:
$forum_id=$fila['forum_id'];
$sql="select forum_name from ".$prefijo."forums where(forum_id='$forum_id')";
$forum_name=mysql_db_query($bdatos,$sql);
$forum_name=mysql_fetch_array($forum_name);
$forum_name=$forum_name['forum_name'];
?>
<td>
<?php
echo $forum_name;
?>
</td>
<?php
//Seleccionamos el título del mensaje.
$post_id=$fila['post_id'];
$sql="select post_subject from ".$prefijo."posts where(post_id='$post_id')";
$post_subject=mysql_db_query($bdatos,$sql);
$post_subject=mysql_fetch_array($post_subject);
$post_subject=$post_subject['post_subject'];
?>
<td>
<?php
echo $post_subject;
?>
</td>
<?php
//Seleccionamos el título del mensaje.
$poster_id=$fila['poster_id'];
$sql="select username from ".$prefijo."users where(user_id='$poster_id')";
$username=mysql_db_query($bdatos,$sql);
$username=mysql_fetch_array($username);
$username=$username['username'];
?>
<td>
<?php
echo $username;
?>
</td>
<td>
<?php
//mostramos la fecha
$fecha=$fila['post_time'];
echo date('d/m/Y H:i',$fecha);
?>
</td>
</tr>
<?php
$contador=$contador+1;
}//final del bucle while
?>
</table>
<?php
mysql_close($conexion);
?>
Muchas gracias a todos.
PD: Me ha motivado a dejar este post, la gente que te ha intentado ayudar, no tu.
Tu pàgina web se la cargaron por tu culpa, tu posteaste los datos de tu BD.
Era cuestion de tiempo.
No culpes a la gente que te ha querido ayudar, de tu propia ignorancia.
Todos somos ignorantes alguna vez en la vida, y gracias a ello, mejoramos y aprendemos.
Marcadores