PDA

Ver la versión completa : Ultimos Post del foro en web html? comooo?



Uleila.com
24-02-2005, 20:57
Hola amigos:

Quisiera comentarles mi problemilla a ver si alguna alma caritativa me ayuda.

La cuestion es que tengo una web en html ( www.uleila.com ) y un foro PHP.

Bueno,me gustaria,que en el index de mi web,pues salieran los ultimos post
del foro,y la verdad es que no se como hacerlo.

El foro esta en la carpeta phpBB2 del directorio raiz de mi web.

Podeis ayudarme.?

Gacias compañeros.

etirini17
24-02-2005, 22:19
lamentablemente no se nada de programacion de webs, pero te ayudare (aunque sea minimamente) votando por tu web, la verdad esta muy buena, me registro...

etirini17
24-02-2005, 22:20
Felicitaciones

<PICCOLO>
24-02-2005, 22:50
Fácil, si me dices cómo se llama la tabla de la base de datos y las columnas que quieres sacar te escribo el código aquí mismo.

-salu2-

etirini17
24-02-2005, 23:01
PICCOLO, que lenguage NO sabes?

Uleila.com
25-02-2005, 00:50
Fácil, si me dices cómo se llama la tabla de la base de datos y las columnas que quieres sacar te escribo el código aquí mismo.

-salu2-
Amigo PICCOLO:
Mi base de datos es la siguiente (Te la escribo como sale en el cpanel,porque de esto no entiendo.):
Connection Strings
Perl $dbh = DBI->connect("DBI:mysql:filabres_foro:localhost","filabres_master","<PASSWORD HERE>");
PHP $dbh=mysql_connect ("localhost", "filabres_master", "<PASSWORD HERE>") or die ('I cannot connect to the database because: ' . mysql_error());
mysql_select_db ("filabres_foro");

Las colunna no se como quieres preguntarme, pero bastaria con el nombre del post la fecha y el autor.Al ser posible,que al hacer clic en uno de esos post se abriera en otra ventana.
Quiero insertarlo en una tabla como la siguiente:
<table width="430" cellspacing="1" cellpadding="2" border="3">.

Perdona mi ignorancia,pero a duras penas se de html.
Te quedo agradecido de antemano y en uleila@uleila.com tienes un amigo.

Uleila.com
25-02-2005, 00:55
lamentablemente no se nada de programacion de webs, pero te ayudare (aunque sea minimamente) votando por tu web, la verdad esta muy buena, me registro...

Te quedo agradecido igualmente etirini17 , gracias de verdad por los animos.
Si buscas algun soft y no lo encuentras,pidemelo a traves de mi foro,en eso si que soy especialista.
Gracias de verdad.

<PICCOLO>
25-02-2005, 07:01
uleila, esta tarde intento sacar tiempo para postearlo. Lo haré en PHP, ya que en HTML no se pueden crear controles de servidor.

Un Saludo

Uleila.com
25-02-2005, 11:44
uleila, esta tarde intento sacar tiempo para postearlo. Lo haré en PHP, ya que en HTML no se pueden crear controles de servidor.

Un Saludo


Gracias Piccolo.

<PICCOLO>
26-02-2005, 14:44
Este es el código fuente que te prometí, no he podido probarlo, asi que antes de meterlo en tu web ( y después de configurarlo) llámalo prueba.php y mételo en cualquier carpeta de tu servidor web.



<?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="phpbb2_";

//Conectamos con la base de datos:
//cambia los siguientes valores con los tuyos:

$host="localhost";
$usr="usuariomysql";
$password="clavemysql";
$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="mibasededatos";

//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_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>
<?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);
?>


Saludos

Uleila.com
26-02-2005, 20:35
Este es el código fuente que te prometí, no he podido probarlo, asi que antes de meterlo en tu web ( y después de configurarlo) llámalo prueba.php y mételo en cualquier carpeta de tu servidor web.



<?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="phpbb2_";

//Conectamos con la base de datos:
//cambia los siguientes valores con los tuyos:

$host="localhost";
$usr="usuariomysql";
$password="clavemysql";
$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="mibasededatos";

//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_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>
<?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);
?>


Saludos
Me da este error:
Parse error: parse error, unexpected T_CONSTANT_ENCAPSED_STRING in /home/filabres/public_html/uleila.com/p.php on line 21
Linea 21:
$sql="select post_id,poster_id,post_time,forum_id from ".$prefijo"posts order by post_time desc";

<PICCOLO>
26-02-2005, 21:04
esa linea debería ser:



$sql="select post_id,poster_id,post_time,forum_id from ".$prefijo."posts order by post_time desc";


Es decir, un punto después de prefijo que me había comido :P

Salu2

Uleila.com
26-02-2005, 21:11
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/filabres/public_html/uleila.com/phpBB2/p.php on line 56
Estoy desesperadoooooo

<PICCOLO>
26-02-2005, 21:18
¿Has configurado el script con los valores de tu base de datos?


$prefijo="phpbb2_";
//el prefijo que tienen las tablas del foro dentro de mysql (debes cambiarlo por el que
//tengas tu

//el host de tu base de datos
$host="localhost";
//el usuario de acceso a mysql
$usr="usuariomysql";
//la clave de acceso a mysql
$password="clavemysql";
//el nombre de la base de datos en la que está el foro
$bdatos="mibasededatos";


Si no configuras esos valores con los tuyos no te va a funcionar nunca.
Revisa sobre todo el prefijo, que es lo que más pinta tiene de que sea
-salu2-


EDITADO:
Prueba el siguiente prefijo que es el que trae por defecto, me equivoqué:


$prefijo='phpbb_';

Si no fuera ese, tienes que abrir el config.php de la carpeta del foro y ver el campo table_prefix

Uleila.com
26-02-2005, 21:35
Lo siento Piccolo,lo hice todo pero me sigue saliendo ese error:
Como lo tengo:
<?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="filabres_";

//Conectamos con la base de datos:
//cambia los siguientes valores con los tuyos:

$host="localhost";
$usr="filabres_master";
$password="******";
$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="filabres_foro";


y lo que sale:


Foro Asunto Usuario Fecha

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/filabres/public_html/uleila.com/phpBB2/p.php on line 56

Ultimos Posts:
Foro Asunto Usuario Fecha

<PICCOLO>
26-02-2005, 21:38
¿filabres_ es el prefijo, seguro?

mira en el config.php de la aplicación (del foro)

¿la base de datos es filabres_foro seguro?
Copia el config.php que tienes en la carpeta del foro aquí, a ver si todo es correcto.

-salu2-

EDITADO:

Segun el mensaje que me has mandado por MP, la bd es correcta, pero el prefijo no.
Prueba el prefijo phpbb_

-salu2-

Uleila.com
26-02-2005, 21:46
<?php


// phpBB 2.x auto-generated config file
// Do not change anything in this file!

$dbms = 'mysql';

$dbhost = 'localhost';
$dbname = 'filabres_foro';
$dbuser = 'filabres_master';
$dbpasswd = '******';

$table_prefix = 'phpbb_';

define('PHPBB_INSTALLED', true);

?>

<PICCOLO>
26-02-2005, 21:48
$table_prefix="phpbb_";

como yo te decía, cambia el prefijo por phpbb_, es decir, pon la siguiente linea en vez de la que hay:

$prefijo="phpbb_";

Uleila.com
26-02-2005, 21:51
Tenias razon Maestro,como siempre. El prefijo es phpbb_ y no filabres.
ya me sale.

Donde le cambio el color y tamaño a la letra?

Gracias Maestro Piccolo.

<PICCOLO>
26-02-2005, 21:54
El tamaño y color de letra, pues con tu editor de páginas web habitual, ya que deduzco que por código no lo sabes hacer :)

-salu2-

Uleila.com
26-02-2005, 22:22
si que se en html,no mucho pero me defiendo,pero creia que php era diferente.

Gracias otra vez.

Ojala y yo tuviese en el foro mio un maestro como tu.

Gente como tu hacen grande el www

Gracias Piccolo

zenok
23-05-2009, 11:09
a mi tambien me tira

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/webcindario/h/f/hfe/foro/ultimos_posts.php on line 55


El problema puede ser que uso vbulletin? Si es por eso que script puedo poner?

j8k6f4v9j
23-05-2009, 13:45
zenok, fíjate en la fecha de los posts y échale un ojo a las normas del foro antes de postear, gracias.

zenok
23-05-2009, 17:03
pero esuqe necesito ese script

j8k6f4v9j
23-05-2009, 18:08
El script es para phpbb, no para vBulletin.

Salu2