Afficher les derniers posts phpBB sur une page quelconque
65 messages • Page 4 sur 5 • 1, 2, 3, 4, 5
Consultez la formation au référencement naturel Google de WebRankInfo / Ranking Metrics
Merci pour ce script qui marche impeccablement sur mon site http://www.soninkara.org. C'est vrai que topic anywhere permet d'exporter du flus RSS qu'il suffit de parser, mais je préfère ce scripts très léger et configurable.
Merci à tous.
Merci à tous.
- Code: Tout sélectionner
<?php
$connection=mysql_connect("localhost","userr_database","mot_de_passe");
mysql_select_db("database");
$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 sur le forum soninké de soninkara.';
}
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) > 40 )
{
$k = substr($topic_title, 0, 40);
$pos = strrpos($k, " ");
$k = substr($k, 0, $pos);
$topic_title = $k . "...";
}
echo '<tr><td width="15%">' . date('d-m-Y', $xpostrow[$i]['post_time']) . '</td>';
echo '<td width="60%"><a class="navigation" href="forum/viewtopic.php?p=' . $xpostrow[$i]['topic_last_post_id'] . '#' . $xpostrow[$i]['topic_last_post_id'] . '">' . $topic_title . '</a></td>';
echo '<td width="3%">Par</td>';
echo '<td width="22%" align="right"><a class="navigation2" href="forum/profile.php?mode=viewprofile&u=' . $xpostrow[$i]['user_id'] . '">' . $xpostrow[$i]['username'] . '</a></td></tr>';
}
echo '</table>';
?>
Salut à tous,
j'ai un soucy, après avoir mis ce script sur ma page, cela m'affiche qu'il est impossible d'afficher les 10 derniers messages en me ramenant à la ligne:
d'où peut venir le problème?
Merci d'avance
j'ai un soucy, après avoir mis ce script sur ma page, cela m'affiche qu'il est impossible d'afficher les 10 derniers messages en me ramenant à la ligne:
- Code: Tout sélectionner
while( $ary = mysql_fetch_array($result) )
d'où peut venir le problème?
Merci d'avance
script
salut!
voilà un script qui règle le probleme!!!!!
http://www.comscripts.com/scripts/?scri ... 83;817;672
A+
j'espère qu'il vous sera utile!!
voilà un script qui règle le probleme!!!!!
http://www.comscripts.com/scripts/?scri ... 83;817;672
A+
j'espère qu'il vous sera utile!!
-

Patrice A. - Modérateur

- Messages: 2413
- Inscription: Ven Fév 11, 2005 19:36
La requete est la meme, mais au lieu de faire des liens en utilisant le last_post_id tu crées des liens en utilisant le topic_id.
Elles sont bien belles vos requêtes, mais vous avez un peu oublié la chose la plus importante : METTRE EN CACHE LE RESULTAT.
Parceque le jour ou vous aurez des messages dans vos forums (imaginez un site comme WRI...) et ben vous allez comprendre votre malheur...
Votre serveur ne resistera pas à une requète si gourmande en ressource avec des ORDER BY et des jointures partout.
voila voila...
Parceque le jour ou vous aurez des messages dans vos forums (imaginez un site comme WRI...) et ben vous allez comprendre votre malheur...
Votre serveur ne resistera pas à une requète si gourmande en ressource avec des ORDER BY et des jointures partout.
voila voila...
TU trouves que c'est une grosse requête:
- Code: Tout sélectionner
SELECT topic_id, topic_title, last_post_id FROM phpbb_topics
WHERE topic_status = 0 AND forum_id !=14 AND forum_id != 13 AND forum_id != 22
ORDER BY last_post_id DESC LIMIT 20
lothar a écrit:TU trouves que c'est une grosse requête:
- Code: Tout sélectionner
SELECT topic_id, topic_title, last_post_id FROM phpbb_topics
WHERE topic_status = 0 AND forum_id !=14 AND forum_id != 13 AND forum_id != 22
ORDER BY last_post_id DESC LIMIT 20
OUI !
Parceque le jour ou tu auras 50.000 messages dans ton forum (regarde combien il y en a sur WRI par exemple...) ta requète prendra beaucoup de temps à s'executer.
Tu n'as aucun moyen d'indexer pour une recherche rapide (sur la date du dernier message j'entends)
Donc SQL va passer en revue tes 50.000 entrées sans exeption, faire tes jointures (heureusement basés sur des clés primaires), et les trier avec un ORDER BY...
Si tu trouves que ca s'appèle une requête simple, faut revoir ton SQL..
Bien sûr il y a plus compliqué.... (GROUP BY et compagnie) mais c'est déja bien assez.
easyzik a écrit:lothar a écrit:TU trouves que c'est une grosse requête:
- Code: Tout sélectionner
SELECT topic_id, topic_title, last_post_id FROM phpbb_topics
WHERE topic_status = 0 AND forum_id !=14 AND forum_id != 13 AND forum_id != 22
ORDER BY last_post_id DESC LIMIT 20
OUI !
Parceque le jour ou tu auras 50.000 messages dans ton forum (regarde combien il y en a sur WRI par exemple...) ta requète prendra beaucoup de temps à s'executer.
Tu n'as aucun moyen d'indexer pour une recherche rapide (sur la date du dernier message j'entends)
Donc SQL va passer en revue tes 50.000 entrées sans exeption, faire tes jointures (heureusement basés sur des clés primaires), et les trier avec un ORDER BY...
Si tu trouves que ca s'appèle une requête simple, faut revoir ton SQL..
Bien sûr il y a plus compliqué.... (GROUP BY et compagnie) mais c'est déja bien assez.
Je n'ai aucune connaissance en SQL, c'est une question que je posais. En l'occurrence il y a plus de 100 000 messages sur mon forum.
Comment faire pour améliorer cette requête et stocker le résultat en cache ?
-

Patrice A. - Modérateur

- Messages: 2413
- Inscription: Ven Fév 11, 2005 19:36
lothar a écrit:Comment faire pour stocker le résultat en cache ?
http://www.webrankinfo.com/forums/viewtopic_28614.htm
Comment afficher les titres + text des derniers post ?
J'ai testé le script ci dessous mail il n'affiche que les titres du post ... Comment faire pour afficher également les premieres lignes du post ???
<?php
$connection=mysql_connect("**","**","**");
mysql_select_db("credit_online");
$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 4";
if( !($result = mysql_query($sql)) )
{
echo 'Impossible d\'obtenir les 10 derniers posts sur le forum crédit-online';
}
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) > 100 )
{
$k = substr($topic_title, 0, 100);
$pos = strrpos($k, " ");
$k = substr($k, 0, $pos);
$topic_title = $k . "...";
}
echo '<tr><td width="15%">' . date('d-m-Y', $xpostrow[$i]['post_time']) . '</td>';
echo '<td width="85%"><a href="forum/viewtopic.php?p=' . $xpostrow[$i]['topic_id'] . '#' . $xpostrow[$i]['topic_id'] . '">' . $topic_title . '</a></td></tr>';
}
echo '</table>';
?>
<?php
$connection=mysql_connect("**","**","**");
mysql_select_db("credit_online");
$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 4";
if( !($result = mysql_query($sql)) )
{
echo 'Impossible d\'obtenir les 10 derniers posts sur le forum crédit-online';
}
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) > 100 )
{
$k = substr($topic_title, 0, 100);
$pos = strrpos($k, " ");
$k = substr($k, 0, $pos);
$topic_title = $k . "...";
}
echo '<tr><td width="15%">' . date('d-m-Y', $xpostrow[$i]['post_time']) . '</td>';
echo '<td width="85%"><a href="forum/viewtopic.php?p=' . $xpostrow[$i]['topic_id'] . '#' . $xpostrow[$i]['topic_id'] . '">' . $topic_title . '</a></td></tr>';
}
echo '</table>';
?>
-

mahefarivony - WRInaute accro

- Messages: 11405
- Inscription: Lun Oct 14, 2002 10:00
t'as l'habitude de laisser tes login et tes mots de passe en clair sur le web comme ça ?
65 messages • Page 4 sur 5 • 1, 2, 3, 4, 5
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 :
- Optimiser le référencement d'un forum phpBB : réécriture d'URL
- Référencement d'un forum phpBB
- Passage à l'heure d'été/hiver sur un forum phpBB
- La détection des blog rolls dans Google Blog Search
- Organiser un bon netlinking interne : conseil n°8 en référencement
- Opérateurs de recherche avancée sur MSN
- Tous les raccourcis-clavier de Google Chrome (shortcuts)
- API Blogger : Google Data API
- La syndication de contenu : afficher un flux RSS sur son site
- Les contenus de Twitter indexés dans Google
- Afficher les derniers posts d'un forum phpbb rewrité
- phpbb afficher les derniers sujets
- Afficher les derniers messages du Forum phpbb
- PHPBB Afficher les derniers messages d'un forum
- PHPBB-> Afficher les derniers messages d'un forum
- [phpbb] script pour afficher les derniers topic sur l'indexe
- Afficher les derniers messages de mon phpbb sur mon index
- Phpbb : afficher derniers messages de "Anonymous"
- Afficher les derniers articles Wordpress
- SPIP - comment afficher les derniers articles
- afficher les derniers sujets de webrankinfo sur son website
- Afficher les derniers message d'un forum sur son site
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités






le forum