Afficher les derniers posts phpBB sur une page quelconque

Consultez la formation au référencement naturel Google de WebRankInfo / Ranking Metrics

Grantome
WRInaute accro
WRInaute accro
 
Messages: 2899
Inscription: Ven Jan 16, 2004 19:47

Message le Sam Sep 18, 2004 21:13

Salut,

Code: Tout sélectionner
<?php
$connection=mysql_connect("xxx","xxx","xxx");
mysql_select_db("xxx");
$sql=mysql_query("SELECT post_id,post_subject FROM phpbb_posts_text WHERE post_subject !='' ORDER BY post_id DESC LIMIT 0,10");
while($result=mysql_fetch_row($sql))
print '<a href=viewtopic.php?t='.$result[0].' >'.$result[1].'</a><br>';
?>


Comment limiter le nombre de caractères ?

J'ai essayé de faire une bidouile avec l'autre script, sans succès.

Une idée ?

fredsoft
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 242
Inscription: Dim Jan 26, 2003 22:39

Message le Sam Sep 18, 2004 21:24

déja la requette est pas bonne

topic_last_post_id DESC il faut classe selon ce champ

Grantome
WRInaute accro
WRInaute accro
 
Messages: 2899
Inscription: Ven Jan 16, 2004 19:47

Message le Sam Sep 18, 2004 21:31

Hummm...

Euh, en faite, ce script permet d'afficher les 10 derniers message du forum, mais j'aimerais justement ajouter la requête pour limiter le titre affiché à 20 caractère, par exemple.

Mais aucune idée de la façon dont procéder.


WebRankInfo
Administrateur du site
Administrateur du site
 
Messages: 15905
Inscription: Ven Avr 19, 2002 19:51

Message le Sam Sep 18, 2004 21:33

essaye en remplaçant
Code: Tout sélectionner
$result[1]
par
Code: Tout sélectionner
substr($result[1], 0, 20)

par contre le pb est que tu cherches dans la table des messages alors qu'il faut chercher dans la table des discussions (phpbb_topics)

Grantome
WRInaute accro
WRInaute accro
 
Messages: 2899
Inscription: Ven Jan 16, 2004 19:47

Message le Sam Sep 18, 2004 21:50

Pfffff... Quel tanche....

C'est bien ce que j'utilisais, mais pas comme il faut... Je me compliquais la vie.

Merci ;-)


WebRankInfo a écrit:par contre le pb est que tu cherches dans la table des messages alors qu'il faut chercher dans la table des discussions (phpbb_topics)


Ah me*de...

Bon, vais y remédier.

Grantome
WRInaute accro
WRInaute accro
 
Messages: 2899
Inscription: Ven Jan 16, 2004 19:47

...

Message le Sam Sep 18, 2004 22:08

Mince...

Marche pas avec la table phpbb_topics

Code: Tout sélectionner
Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource in /home/local/apache/htdocs/sites/x/xxx/index.php on line 101


V'la le code

Edit:

C'est bon tout fonctionne.... erreur de frappe

Nico59
Nouveau WRInaute
 
Messages: 24
Inscription: Jeu Aoû 05, 2004 12:35

Message le Dim Avr 24, 2005 14:19

MagicManu a écrit:Celui de ma page d'accueil :

Je l'ai trouvé sur le forum phpBB et je l'ai modifié pour le mettre sous forme d'un tableau avec la date (le format peut être changé), le titre (limité aux 25 premiers caractères) et le posteur.

Code: Tout sélectionner
<?php
$sql = "SELECT t.topic_id, t.topic_title, t.topic_replies, t.topic_last_post_id, f.forum_id, f.forum_name, p.post_time, u.user_id, u.username
       FROM phpbb_topics AS t, phpbb_forums AS f, phpbb_posts AS p, phpbb_users AS u
       WHERE t.forum_id = f.forum_id
       AND f.auth_view < 3 AND f.auth_read < 3     
       AND t.topic_moved_id = 0
       AND p.post_id = t.topic_last_post_id
       AND u.user_id = p.poster_id
      AND f.forum_id != 8
       ORDER BY t.topic_last_post_id DESC
       LIMIT 10";
if( !($result = mysql_query($sql)) )
{
   echo 'Impossible d\'obtenir les 10 derniers posts.';
}

while( $ary = mysql_fetch_array($result) )
{
   $xpostrow[] = $ary;
}

echo '<table border="0" width="100%">';
for( $i = 0; $i < count($xpostrow); $i++ )
{   
   $topic_title = htmlspecialchars(stripslashes($xpostrow[$i]['topic_title']));
   if( strlen($topic_title) > 25 )
   {
      $k = substr($topic_title, 0, 25);
      $pos = strrpos($k, " ");
      $k = substr($k, 0, $pos);
      $topic_title = $k . "...";
   }
   echo '<tr><td width="12%" class="news">' . date('G\Hi', $xpostrow[$i]['post_time']) . '</td>';   
   echo '<td width="53%" class="news"><a href="forums/viewtopic.php?p=' . $xpostrow[$i]['topic_last_post_id'] . '#' . $xpostrow[$i]['topic_last_post_id'] . '">' . $topic_title . '</a></td>';
   echo '<td width="35%" class="news">par <a href="forums/profile.php?mode=viewprofile&amp;u=' . $xpostrow[$i]['user_id'] . '">' . $xpostrow[$i]['username'] . '</a></td></tr>';
}
echo '</table>';
?>


J'ai un forum privé ( N°8 ) d'où le "AND f.forum_id != 8" :wink:


Merci pr la requete, c'est niquel !=)


XelNaga
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 188
Inscription: Mar Juin 24, 2003 12:45

Message le Mar Aoû 09, 2005 10:00

Voila le mien fonctionne presque :

Code: Tout sélectionner
<?php
$connection=mysql_connect("xxx","xxx","xxx");
mysql_select_db("xxx");
$sql=mysql_query("SELECT topic_id, topic_title FROM phpbb_topics WHERE topic_status = 0 ORDER BY topic_time DESC LIMIT 10");
while($result=mysql_fetch_row($sql))
print '<a href=/forum/viewtopic.php?t='.$result[0].' ><img src="../templates/temp/img/a.gif" border=0> &nbsp;'.$result[1].'</a><br>';
?>


En effet il y a un problème car ce script ne s'actualise pas, il m'a bien afficher les 10 derniers posts mais quand un nouveau post se crée, l'affichage ne change pas. Comment resoudre le probleme ?


Patrice A.
Modérateur
Modérateur
 
Messages: 2413
Inscription: Ven Fév 11, 2005 19:36

Message le Mar Aoû 09, 2005 11:02

ton script trie par date de création du sujet.
Il faut trier par date du dernier message dans le sujet :wink:


XelNaga
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 188
Inscription: Mar Juin 24, 2003 12:45

Message le Mar Aoû 09, 2005 12:48

Et que dois-je ajouter dans ce cas ?


Patrice A.
Modérateur
Modérateur
 
Messages: 2413
Inscription: Ven Fév 11, 2005 19:36

Message le Mer Aoû 10, 2005 8:53

à mon avis, dans la table phpbb_topics, il doit y avoir un champ du genre topic_last_post_time, ou alors, un topic_last_post qui te permettra de retrouver le message correspondant et d'utiliser son post_time.


cybervince
WRInaute passionné
WRInaute passionné
 
Messages: 872
Inscription: Dim Aoû 01, 2004 0:08

Message le Mer Aoû 10, 2005 10:51

J'étais persuadé d'avoir réagi sur ce vieu post mais visiblement non.
Il y a un mod qui s'appelle TopicsAnywhere qui permet entre autre de générer un flux rss avec les x derniers messages répondant à plein de critères.
Après y'a plus qu'à parser le RSS (genre avec MagPieRSS)


XelNaga
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 188
Inscription: Mar Juin 24, 2003 12:45

Message le Mer Aoû 10, 2005 11:35

TopicsAnywhere ne fonctionne pas chez moi, le formulaire est bon mais quand je valide le script n'affiche rien !

DARK-V
Nouveau WRInaute
 
Messages: 1
Inscription: Mar Aoû 08, 2006 13:49

Message le Mar Aoû 08, 2006 13:54

la requete on la place ou ?désolé...

stefko
Nouveau WRInaute
 
Messages: 9
Inscription: Ven Jan 30, 2004 22:08

Merci d'avance ....

Message le Dim Sep 17, 2006 12:50

J'ai testé le code il fonctionne super bien, j'aimerais savoir comment faire pour obtenir plus d'infos, en fait j'aimerais pouvoir faire ce qu'il est possible de faire avec "forumactif", exemple du format que j'aimerais pouvoir mettre en place:

Titre du post
La date du post - l'heure du post par pseudo du posteur
Début du post ( 2 ou 3 phrases ) ...
[Lecture complète ( le lien pour la lecture complète) ]
Commentaires: 1 :: voir les commentaires (Poster un commentaire)

Voila je sais pas si c'est compliqué à mettre en place, merci d'avance si vous avez le code pour faire cela.

Cordialement,

Stéphane

Afficher les derniers posts phpBB sur une page quelconque Afficher les derniers posts phpBB sur une page quelconque

Formation recommandée sur ce thème :

Formation Référencement naturel Google : apprenez une méthode efficace pour optimiser à fond le référencement naturel dans Google de façon durable... Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités