Aller au menu - Aller au contenu
Inscris-toi au e-camp "Héberge ton jeu Facebook sur Azure" de Microsoft vendredi 25 mai à 13h30 !

Mon premier script php en construction

besoin d'aide relativement bonne svp.

Pour accéder à cette section
Connectez-vous !
connexion_rpx

Offre d'emploi : Développeur Web PHP/Drupal (H/F)

Page 1 
Auteur Message
1 visiteur sur ce sujet (1 Anonyme)
Page 1 
Hors ligne Black-Stone # Posté le 01/09/2007 à 01:28:33
Guns don't kill people, I do.
Avatar

Salut à tous, :)
Je suis en train de me faire un petit script php mais je commance à me perdre :-° en fait, c'est mon premier script ;) et voiçi ce que je veux réaliser:

Je veux faire un script pour des sitewebs de toutes sorte qui va aller chercher dans un forum phpbb, le premier post de tout les topics dans un forum déterminé (sois "News") puis d'utiliser simplement les posts suivant le premier comme commentaires. Ainsi, je n'aurrai pas besoin d'écrire les news de mes "clients" manuellement. :p

Fonctions recherchées:
  • Prise en charge du bbcode de phpbb (aussi pour les images si possible)
  • Émission d'un flux rss "Automatique" (seulement si possible)
  • Affichage du nombre de commentaires + proposition de la rédaction d'un commentaire (par un simple click sur le mot commentaires)
  • Émettre un nombre limité de "news" (déterminé dans la configuration)
  • Afficher les paragraphe dans la bonne forme

Ca fait déjà quelque jours que je l'ai commancé mais je ne suis pas capable de faire fonctionner le bbcode de phpbb. Voici mon script:
(Prenez soin de lire les commentaires svp.)
Code : PHP - Afficher / masquer les numéros de ligne
  1. <?php
  2. /***************************************************************************
  3.  *                          Script News PHP - PHPBB (En construction)
  4.  *                          -----------------------
  5.  *      Version:                                0.1 -2007
  6.  *      Créé par:                             Sool
  7.  *      Email:                                  gab_le_roux@hotmail.com
  8.  *      
  9.  *
  10.  ***************************************************************************/
  11.  
  12. /***************************************************************************
  13.  *
  14.  *      Vous pouvez utiliser ce script comme bon vous semble.
  15.  *
  16.  ***************************************************************************/
  17.  
  18. /*Configuration Générale****************************************************/
  19. include ('connect.php'); //Fichier de connection à la database
  20. $limite="5"; //Nombre maximum de news affichés
  21. $forum_id='5'; //ID du forum
  22.  
  23. /*Configuration Répertoire**************************************************/
  24. define('IN_PHPBB', true);
  25. $phpbb_root_path = './Forum/';
  26. include($phpbb_root_path . 'extension.inc');
  27. include($phpbb_root_path . 'common.'.$phpEx);
  28. include($phpbb_root_path . 'includes/bbcode.'.$phpEx);
  29.  
  30. /*Selections dans la db*****************************************************/
  31. $select1 = "SELECT post_id FROM phpbb_posts_text WHERE post_subject != '' ORDER BY post_id DESC LIMIT $limite";
  32. $lien1 = mysql_query($select1,$link) or die ('Error: '.mysql_error() );
  33. $select2 = "SELECT post_id,poster_id,forum_id,topic_id,post_time FROM phpbb_posts WHERE forum_id = '$forum_id' ORDER BY post_time DESC";
  34. $lien2 = mysql_query($select2,$link) or die ('Error: '.mysql_error() );
  35.  
  36. /*Sélection et parsage des données******************************************/
  37.         while($row = mysql_fetch_array($lien2) and mysql_fetch_array($lien1))
  38.         {
  39.                 $sql = "SELECT post_text FROM phpbb_posts_text WHERE post_id = '$row[post_id]'";
  40.                 $result = mysql_query($sql,$link);
  41.                 $message = mysql_result($result,0);
  42.                 $message = htmlentities($message);
  43.                
  44.                 $sql = "SELECT post_subject FROM phpbb_posts_text WHERE post_id = '$row[post_id]'";
  45.                 $result = mysql_query($sql,$link);
  46.                 $sujet = mysql_result($result,0);
  47.                 $sujet = htmlentities($sujet);
  48.                
  49.                 $sql = "SELECT username FROM phpbb_users WHERE user_id = '$row[poster_id]'";
  50.                 $result = mysql_query($sql,$link);
  51.                 $username = mysql_result($result,0);
  52.                 $username = htmlentities($username);
  53.                 $time = date("D d M Y H:i",$row['post_time']); //ici, j'aimerais bien l'avoir en francais
  54.  
  55. /*Travail du bbcode**********************************************************/
  56.                 $message = smilies_pass($message);
  57.                 $message = make_clickable($message);
  58.                 $message = nl2br($message);
  59.  
  60.                 $message = stripslashes($message);
  61.                 $message = preg_replace('#\[b\](.+)\[/b\]#isU', '<strong>$1</strong>', $message);
  62.                 $message = preg_replace('#\[u\](.+)\[/u\]#isU', '<u>$1</u>', $message);
  63.                 $message = preg_replace('#\[i\](.+)\[/i\]#isU', '<em>$1</em>', $message);
  64.                 $message = preg_replace('#\[color=(.+)\](.+)\[/color\]#isU', '<font color="$1">$2</font>', $message);
  65.                 $message = preg_replace('#\[url=(.+)\](.+)\[/url\]#isU', '<a href="$1">$2</a>', $message);
  66.                 $message = preg_replace('#\[url\](.+)\[/url\]#isU', '<a href="$1">$1</a>', $message);
  67.                 $message = preg_replace('#\[quote=(.+)\](.+)\[/quote\]#isU', '$1 a dit :(<blockquote>$2</blockquote>',$message);
  68.  
  69. /*Affichage des données*******************************************************/
  70.                 echo"
  71.                        <h1>$sujet</h1>
  72.                        <p>R&eacute;dig&eacute; par $username le $time</p>
  73.                        <p>$message</p>
  74.                        <a href='/forum/viewtopic.php?t=$row[topic_id]'>Commentaires</a> ($nbcomments)
  75.                        ";
  76.         }
  77. ?>

Le tout marche relativement bien mais les posts que je désire utiliser comme commentaires s'affiche en premier (car ils sont les derniers post), le bbcode ne fonctionne pas ou du moin, à peine et pour le rss, ca peut encore attendre car c'est peut important.

Je suis ouvert à toute propositions et vous pouvez moddifier ce code comme bon vous semble :D Merci infiniment d'avoir pris ce temps pour lire ce post et j'espere que vous avez des solutions.
http://bktest.kicks-ass.net/

[Edit] Après un peut de travail sur mon script, je l'ai nettoyé puis j'ai réussi a faire fonctionner la limite et une petite partie du bbcode et le code est beaucoup plus propre. Il ne reste plus qu'a faire fonctionner le reste du bbcode correctement et d'arranger quelque htmlentities. j'espere que quelqu'un va finire par m'aider parceque je commence a avoir quelque difficultés.
Édité le 03/09/2007 à 17:12:24 par Black-Stone

.:Sool:. :p
 
Publicité # Posté le 01/09/2007 à 01:28:33

Hors ligne Black-Stone # Posté le 02/09/2007 à 02:44:08
Guns don't kill people, I do.
Avatar

ca fait déjà un bon moment que j'ai fait ce post, quelqu'un a une idée?

.:Sool:. :p
 
Hors ligne anonyme # Posté le 02/09/2007 à 08:42:02

Pour un premier script, c'est beaucoup ! J'avoue que je bloque là !
Hors ligne Black-Stone # Posté le 02/09/2007 à 16:34:53
Guns don't kill people, I do.
Avatar

j'ai peut-être visé trop gros :P mais une fois que ce script sera fonctionnel, il va être Très pratique alors ca vaut le coup :D quelqu'un a une idée? j'ai toujours pas trouvé comment limiter le nombre de premier post seulement.

[Edit] Beaucoup de modifications :D plus de truques semblent marcher.
Édité le 03/09/2007 à 03:53:25 par Black-Stone

.:Sool:. :p
 
Hors ligne Black-Stone # Posté le 03/09/2007 à 17:06:03
Guns don't kill people, I do.
Avatar

Allez!!! je peux pas croire que personne ici ne connais assez le php ou encore phpbb pour pouvoir m'aider!!

.:Sool:. :p
 
Hors ligne anonyme # Posté le 04/09/2007 à 10:15:02

Commente un peu plus alors...

Retour au forum "PHP" ou à la liste des forums

Pour accéder à cette section
Connectez-vous !
connexion_rpx