Index
Forums
Annuaire
Référencement
Télécharger
  phpBB SEO : Référencement Google, MSN, Yahoo, Annuaires, Forums  
phpBB SEO
Boards
Directory  
SEO  
Downloads
 
  Rechercher Search
    S'enregistrer
Pseudo :  Passe :  Auto  
Register  
 
   
Afficher les derniers posts en php sur une page externe
Aller à la page 1, 2  Suivante
 
Poster un nouveau sujet   Répondre au sujet    phpBB SEO » Forum Référencement  » mod Rewrite phpBB3  » Réécriture URL Avancée
::  
Auteur Message
yazerty
PR1
PR1


Inscrit le: 30 Oct 2006
Messages: 173

Afficher les derniers posts en php sur une page externePosté le: Mer Jan 16, 2008 10:03 pm    Sujet du message: Afficher les derniers posts en php sur une page externe

Bonsoir,

Avec phpbb2 j'affichais les derniers posts de mon forum sur une page extérieure au forum (ma page d'accueil). J'étais en mode simple et ajoutais simplement le numéro du topic à la fin d'une url type de sujet (ex : -exemple.com/forum/topic$id.html)

J'aimerais tout simplement faire la même chose avec phpbb3 mais cette fois ci en mode avancé. La chose m'impose donc de fait de passer par la fonction de phpbb seo permettant de "convertir" les urls.

Je ne suis pas sûr de la bonne utilisation de la chose, mais j'ai un autre problème avant celui là :-/.

Voici mon code :

Code:

// Connexion à la BDD
(...)

// Change this to your phpBB URL
$urlPath = "http://www.exemple.com/forum";
// Change this to your phpBB path
$phpbb_root_path = './forum/';
define('IN_PHPBB', true);
include($phpbb_root_path . 'phpbb_seo/phpbb_seo_class.php');
include($phpbb_root_path . 'common.php');

// Sélection des 10 derniers posts

$sql = "SELECT PST.post_subject, PST.post_text, PST.poster_id, PST.post_time, U.username
FROM phpbb3_posts PST, phpbb3_users U
WHERE U.username = PST.poster_id
GROUP BY PST.topic_id
ORDER BY PST.post_time ASC
LIMIT 10";

$req = mysql_query($sql) or die(mysql_error());

// Boucle d'affichage du post
while($db_data = mysql_fetch_assoc($req)) {

// Titre du post
$post_title = $db_data['post_subject'];

// Url du post
$topic_id = $db_data['topic_id'];
if ( empty($phpbb_seo->seo_url['topic'][$topic_id]) ) {
   if ($topic_data['topic_type'] == POST_GLOBAL) {
      $phpbb_seo->seo_opt['topic_type'][$topic_id] = POST_GLOBAL;
   }
   $phpbb_seo->seo_censored[$topic_id] = censor_text($topic_data['topic_title']);
   $phpbb_seo->seo_url['topic'][$topic_id] = $phpbb_seo->format_url($phpbb_seo->seo_censored[$topic_id]);
}
$post_url = append_sid("{$phpbb_root_path}viewtopic.$phpEx", "t=$topic_id");



Le message suivant s'affiche :
Citation:
The config. file could not be found.

Click here to install phpBB


J'imagine bien que c'est dans la déclaration de mes fichiers de base que ça bug, mais je ne vois pas comment rectifier la chose afin de rebidouiller ça dans le bon sens.

Pourriez-vous m'aider à biduler le trublion dans le bon sens s'il vous plait Smile ?

ps : en plus je pense que ça pourra intéresser quelques personnes Cool ...

_________________
L'insolite Yazerty.Net - Interprétation et signification des rêves
Revenir en haut de page
Visiter le site web de l'utilisateur
dcz
Administrateur - Site Admin
Administrateur - Site Admin


Inscrit le: 28 Avr 2006
Messages: 14814

Afficher les derniers posts en php sur une page externePosté le: Ven Jan 18, 2008 9:42 am    Sujet du message: Re: Afficher les derniers posts en php sur une page externe

Donc, pas besoin d'inclure la classe phpBB SEO si tu inclus common.php, ce sera déjà fait.

Pour ton problème de chemins, tu utilises bien ce script à la racine d'un domaine, avec phpBB installé dans le dossier forum/ ?

Vu que tu inclus common.php, tu devrais aussi en profiter pour utiliser la classe db de phpBB, voir pour lancer une sessions utilisateur.

Enfin, pour les url, si tu veux des urls de sujets, il faudrait faire une autre jointure sur la table des sujets, pour récupérer le type de sujet ($topic_data['topic_type']) et sont titre ($topic_data['topic_title']), voir, aussi le titre et l'id du forum pour bien faire, même si le cache du mod permettra quand même l'injection des url de forum en cache au besoin.

Le but pour être universel, c'est :
Code:
$post_url = append_sid("{$phpbb_root_path}viewtopic.$phpEx", "f=$forum_id&t=$topic_id");


Donc, pour la requête, tu peux commencé par la table des sujets, vu qu'il y a les infos pour savoir quels sont les plus récentes, joindre la table des forums pour le titre du forum, et joindre la table des posts uniquement si tu veux aussi afficher le contenu de ceux ci.

++

_________________
Useful links :
SEO Forum || SEO Directory || SEO phpBB || SEO phpBB3 || Search
____________________

Liens Utiles :
Forum référencement || Annuaire référencement || Référencement phpBB || Référencement phpBB3 || Recherche
Revenir en haut de page
Visiter le site web de l'utilisateur
yazerty
PR1
PR1


Inscrit le: 30 Oct 2006
Messages: 173

Afficher les derniers posts en php sur une page externePosté le: Ven Jan 18, 2008 11:48 am    Sujet du message: Re: Afficher les derniers posts en php sur une page externe

J'essaie d'avancer pas à pas...

j'aboutis à cette requête :

Code:
// Sélection des 10 derniers posts
$sql = "SELECT T.topic_id, T.forum_id, T.topic_title, T.topic_type, T.topic_first_poster_name, T.topic_time, P.post_text
FROM phpbb3_topics T, phpbb3_posts P
WHERE P.post_id = T.topic_last_post_id
ORDER BY T.topic_id DESC
LIMIT 10";


Ca semble afficher ce que je veux Smile. (et ce qu'il faut pour faire par la suite une réécriture d'url avec tous les éléments nécessaires Smile )

Lancer une session utilisateur dès la page d'accueil me plairait peut-être Smile. Je verrai ça un peu plus tard par contre (c'est plus un effet de style qu'autre chose car comme mon site se résume au forum les membres sont très souvent sur le forum et peu souvent sur la page d'accueil en pratique...).

Par contre j'ai toujours un problème avec l'inclusion du fichier common Mad .

Tu as parfaitement compris mon environnement :

- page index.php à la racine, sur laquelle je veux afficher les derniers posts. Dans cette page index.php je fais un include('lasts.php') (pour clarifier le code).

- page lasts.php située à la racine également.

- forum situé dans un répertoire "/forum" à partir de la racine.

Et donc quand je fais ceci :

Code:
// Environnement
$urlPath = "http://www.exemple.com/forum";
$phpbb_root_path = './forum/';
define('IN_PHPBB', true);
include($phpbb_root_path . 'common.php');


Cela m'affiche :

Citation:
The config. file could not be found.

Click here to install phpBB


Je ne vois pas ce qui peut buguer dans ce code là :- ?

_________________
L'insolite Yazerty.Net - Interprétation et signification des rêves
Revenir en haut de page
Visiter le site web de l'utilisateur
dcz
Administrateur - Site Admin
Administrateur - Site Admin


Inscrit le: 28 Avr 2006
Messages: 14814

Afficher les derniers posts en php sur une page externePosté le: Ven Jan 18, 2008 2:10 pm    Sujet du message: Re: Afficher les derniers posts en php sur une page externe

Je viens de comprendre, tu n'as pas déclaré $phpEx.

Ajoutes juste :

Code:
$phpEx = 'php';


avant l'include Wink

++

_________________
Useful links :
SEO Forum || SEO Directory || SEO phpBB || SEO phpBB3 || Search
____________________

Liens Utiles :
Forum référencement || Annuaire référencement || Référencement phpBB || Référencement phpBB3 || Recherche
Revenir en haut de page
Visiter le site web de l'utilisateur
yazerty
PR1
PR1


Inscrit le: 30 Oct 2006
Messages: 173

Afficher les derniers posts en php sur une page externePosté le: Ven Jan 18, 2008 4:11 pm    Sujet du message: Re: Afficher les derniers posts en php sur une page externe

Bien vu Very Happy !!

Par contre j'ai un bug étrange dans la génération des urls "rewrittées" : les accents sont remplacés par des "-" sur ma page index.php (ex : "succ-s-m-rit-), mais ça redirige ensuite sur la bonne url, à savoir une url ou les lettres accentuées sont transformées en lettres sans accents (ex : "succes-merite").

Pourtant j'utilise la fonction sans modif :

Code:
// Données du topic
$topic_title = $topic_data['topic_title'];
$forum_id = $topic_data['forum_id'];
$topic_id = $topic_data['topic_id'];

// Url du post
if ( empty($phpbb_seo->seo_url['topic'][$topic_id]) ) {
   if ($topic_data['topic_type'] == POST_GLOBAL) {
      $phpbb_seo->seo_opt['topic_type'][$topic_id] = POST_GLOBAL;
   }
   $phpbb_seo->seo_censored[$topic_id] = censor_text($topic_data['topic_title']);
   $phpbb_seo->seo_url['topic'][$topic_id] = $phpbb_seo->format_url($phpbb_seo->seo_censored[$topic_id]);
}
$post_url = append_sid("{$phpbb_root_path}viewtopic.$phpEx", "f=$forum_id&t=$topic_id");


Je suis persuadé d'avoir trouvé cette fonction dans un fichier du premod en cherchant à savoir comment marchait le système de rewritting, mais je n'arrive pas à retrouver l'endroit où je l'avais trouvé pour voir si ce code est bien le bon :-/.

_________________
L'insolite Yazerty.Net - Interprétation et signification des rêves
Revenir en haut de page
Visiter le site web de l'utilisateur
yazerty
PR1
PR1


Inscrit le: 30 Oct 2006
Messages: 173

Afficher les derniers posts en php sur une page externePosté le: Sam Jan 19, 2008 12:32 pm    Sujet du message: Re: Afficher les derniers posts en php sur une page externe

Aaah je crois que c'est bon, il me manquait un mysql_query('SET NAMES utf8'); pour que ma requête ressorte sous le bon formattage. C'est vrai qu'on est passé à l'utf8 avec phpbb3 Smile... !

_________________
L'insolite Yazerty.Net - Interprétation et signification des rêves
Revenir en haut de page
Visiter le site web de l'utilisateur
yazerty
PR1
PR1


Inscrit le: 30 Oct 2006
Messages: 173

Afficher les derniers posts en php sur une page externePosté le: Sam Jan 19, 2008 3:50 pm    Sujet du message: Re: Afficher les derniers posts en php sur une page externe

Je confirme que ça semble parfaitement bien marcher comme ça maintenant Smile !

MERCI pour ton aide dcz !!

_________________
L'insolite Yazerty.Net - Interprétation et signification des rêves
Revenir en haut de page
Visiter le site web de l'utilisateur
YoyoS



Inscrit le: 09 Oct 2006
Messages: 37

Afficher les derniers posts en php sur une page externePosté le: Jeu Aoû 14, 2008 6:22 pm    Sujet du message: Re: Afficher les derniers posts en php sur une page externe

EDIT: a supprimer , sorry c'était une bête question ^^

_________________
Visitez mon site de tutoriels informatiques
Revenir en haut de page
lemoussel
PR0
PR0


Inscrit le: 18 Juil 2008
Messages: 75
Localisation: Haute-Normandie, Arnières sur Iton

Afficher les derniers posts en php sur une page externePosté le: Ven Aoû 15, 2008 12:47 pm    Sujet du message: Re: Afficher les derniers posts en php sur une page externe

yazerty,

Etant intéressé par ton script, pourrais tu le mettre à dispo ?

Merci.
Revenir en haut de page
Visiter le site web de l'utilisateur
YoyoS



Inscrit le: 09 Oct 2006
Messages: 37

Afficher les derniers posts en php sur une page externePosté le: Ven Aoû 15, 2008 4:40 pm    Sujet du message: Re: Afficher les derniers posts en php sur une page externe

Tiens lemoussel, j'ai justement bossé dessus hier, si ça peut t'aider
http://www.tutomaker.com/forum/mod-topic-anywhere-pour-phpbb3-t404.html

_________________
Visitez mon site de tutoriels informatiques
Revenir en haut de page
lemoussel
PR0
PR0


Inscrit le: 18 Juil 2008
Messages: 75
Localisation: Haute-Normandie, Arnières sur Iton

Afficher les derniers posts en php sur une page externePosté le: Sam Aoû 16, 2008 7:10 am    Sujet du message: Re: Afficher les derniers posts en php sur une page externe

Merci Very Happy

Et voilà le résultat : http://www.ville-arnieressuriton.fr/lastposts.php

Reste plus qu'a intègrer le tout dans la page d'accueil du site.
Revenir en haut de page
Visiter le site web de l'utilisateur
YoyoS



Inscrit le: 09 Oct 2006
Messages: 37

Afficher les derniers posts en php sur une page externePosté le: Sam Aoû 16, 2008 9:19 am    Sujet du message: Re: Afficher les derniers posts en php sur une page externe

Pas mal, t'as fait le plus dur à mon avis Mr. Green

_________________
Visitez mon site de tutoriels informatiques
Revenir en haut de page
SeO
Administrateur - Site Admin
Administrateur - Site Admin


Inscrit le: 15 Mar 2006
Messages: 3482

Afficher les derniers posts en php sur une page externePosté le: Sam Aoû 16, 2008 9:34 am    Sujet du message: Re: Afficher les derniers posts en php sur une page externe

Il y a aussi la solution en passant par les flux de GYM sitemaps & RSS qui est assez simple, exemple :
http://phpbb3.phpbb-seo.net/demo/rss-links.php
http://phpbb3.phpbb-seo.net/demo/rss-messages.php


Wink

_________________
phpBB SEO || SEO Forum || Forum Référencement
GYM Sitemap & RSS for phpBB3 has been released ! || GYM Sitemap & RSS for phpBB3 est disponible !
Revenir en haut de page
lemoussel
PR0
PR0


Inscrit le: 18 Juil 2008
Messages: 75
Localisation: Haute-Normandie, Arnières sur Iton

Afficher les derniers posts en php sur une page externePosté le: Sam Aoû 16, 2008 2:55 pm    Sujet du message: Re: Afficher les derniers posts en php sur une page externe

Je ne peux essayer ces scripts car il me manque functions_demo.php.

Par ex. dans le script rss-links.php il y a :
Code:
include($phpbb_root_path . 'demo/functions_demo.' . $phpEx);
Revenir en haut de page
Visiter le site web de l'utilisateur
dcz
Administrateur - Site Admin
Administrateur - Site Admin


Inscrit le: 28 Avr 2006
Messages: 14814

Afficher les derniers posts en php sur une page externePosté le: Lun Aoû 18, 2008 9:26 am    Sujet du message: Re: Afficher les derniers posts en php sur une page externe

En fait, c'est un exemple, le but n'est pas de reproduire cette page exactement.

Le code inclus ne sert qu'a afficher la source de l'exemple.

Donc, le principe, c'est d'ajouter le code situé entre les commentaires :
Code:
// GYM Sitemaps & RSS agregator


avant :

Code:
page_header(


et d'ajouter :

Code:
<!-- INCLUDE gym_link_body.html -->


dans le template correspondant au fichier (index_body.html si tu ajoutes ce code dans index.php etc ...) à l'endroit ou tu veux afficher la liste.

C'est toujours le même principe, peut importe la page et peut importe les options.

++

_________________
Useful links :
SEO Forum || SEO Directory || SEO phpBB || SEO phpBB3 || Search
____________________

Liens Utiles :
Forum référencement || Annuaire référencement || Référencement phpBB || Référencement phpBB3 || Recherche
Revenir en haut de page
Visiter le site web de l'utilisateur
Montrer les messages depuis:   
Poster un nouveau sujet   Répondre au sujet    phpBB SEO » Forum Référencement  » mod Rewrite phpBB3  » Réécriture URL Avancée
Page 1 sur 2 Aller à la page 1, 2  Suivante

Navigation Autres sujets de discussion

Sauter vers: