PDA

Ver la versión completa : Enlaces en codigo php



wolfmoon
03-02-2010, 17:50
Hola buenas, buscando por la red di con este foro y con un post en el que hablaban de como poner en una web externa los ultimos post de un foro phpbb, me gustaria saber en base a este codigo como hacer para que el "asunto" de cada mensaje se convierta en un enlace que lleve a ese mismo post en el foro.

El codigo es el siguiente:


<?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="xxxx";
$usr="xx_xxx";
$password="xxx";
$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="xxx;

//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 style="width:500px; color:red">
<?php
echo $forum_name;
?>
</td>
<?php
//Seleccionamos el título del mensaje.
$post_id=$fila['post_id'];
$sql="select post_subject from ".$prefijo."posts_text 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 style="width:500px; color:red">
<?php
echo $post_subject;
?>
</td>
<?php
//Seleccionamos el autor 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);
?>