Afficher sur un site les posts d'une catégorie

Ce forum vous servira à trouver de l'aide uniquement en ce qui concerne le développement d'un de vos MODs, ou l'adaptation d'un MOD phpBB2 pour phpBB3.

Modérateur: Equipe

Re: Afficher sur un site les posts d'une catégorie

Messagede Dr DLP » 14 Juin 2009 à 15:06

Comme utf8_encode(), c'est une fonction à appliquer à ton post avant de l'afficher.
Avatar de l’utilisateur
Dr DLP
Floodeur universel
Floodeur universel
 
Messages: 8295
Inscription: 05 Mar 2003 à 22:49
Localisation: Var ( 83 )

Re: Afficher sur un site les posts d'une catégorie

Messagede ekudarius » 14 Juin 2009 à 18:59

J'ai mit :

Code: Tout sélectionner
$l = htmlentities(utf8_decode($message));
   echo html_entity_decode($l);


Mais toujours le même problème :(
ekudarius
Posteur néophyte
Posteur néophyte
 
Messages: 55
Inscription: 06 Juin 2009 à 13:43

Re: Afficher sur un site les posts d'une catégorie

Messagede Dr DLP » 14 Juin 2009 à 19:03

htmlentities ou html_entity_decode, pas les deux :)
Avatar de l’utilisateur
Dr DLP
Floodeur universel
Floodeur universel
 
Messages: 8295
Inscription: 05 Mar 2003 à 22:49
Localisation: Var ( 83 )

Re: Afficher sur un site les posts d'une catégorie

Messagede ekudarius » 14 Juin 2009 à 23:36

C'est bon cela fonctionne avec html_entity_decode().

htmlentities() ne fonctionne pas, il affiche tout le code html (expl : <b><br/>xxxxx</b>)

Merci à vous ;)

J'ai un autre problème :D

Je voudrais compter le nombre de news afin de faire des pages pour afficher que 5 news par page sur mon site mais je n'arrive pas à utiliser mysql_num_rows().

J'ai fait ceci :

Code: Tout sélectionner
$sql =    'SELECT p.*, t.* FROM ' . POSTS_TABLE . ' p JOIN ' . TOPICS_TABLE . ' t ON p.topic_id = t.topic_id
      AND p.post_id = t.topic_first_post_id
      AND p.forum_id = '. $id_forum_news .'
      ORDER BY p.post_id DESC LIMIT 10';

$result = $db->sql_query($sql);

$Total_News = mysql_num_rows($result);


Mais sa me renvois :

[phpBB Debug] PHP Notice: in file news.php on line 12: mysql_num_rows(): supplied argument is not a valid MySQL result resource


A bientôt.
ekudarius
Posteur néophyte
Posteur néophyte
 
Messages: 55
Inscription: 06 Juin 2009 à 13:43

Re: Afficher sur un site les posts d'une catégorie

Messagede sylver35 » 15 Juin 2009 à 08:54

Bonjour,

relie toi un peu que diable:
tu met des AND et pas de WHERE?
Tout ce qui doit être fait. .. mérite d'être bien fait!
La vitesse de la lumière étant supérieure à la vitesse du son, bien des gens paraissent brillants jusqu'au moment où ils ouvrent la bouche.
PageRank: Image
Image
Avatar de l’utilisateur
sylver35
Maître-posteur
Maître-posteur
 
Messages: 423
Inscription: 26 Fév 2008 à 14:58
Localisation: Bretagne

Re: Afficher sur un site les posts d'une catégorie

Messagede Dr DLP » 15 Juin 2009 à 11:29

mysql_num_rows n'existe pas en phpBB.

Pour avoir l'équivalent il faut te servir de COUNT() dans ta requête SQL.

Accessoirement tu as effectivement une erreur dans ta requête, le premier AND devrait être un WHERE, sinon tes conditions s'appliquent à la jointure.
A moins que ce ne soit voulu, dans ce cas tes conditions ne s'appliquent pas toutes à cette table.

La requête pour avoir le nombre de news du forum $id_forum_news:
Code: Tout sélectionner
$sql "SELECT count(topic_id) AS nombre_news FROM phpbb_topics WHERE forum_id = " $id_forum_news;
$result $db->sql_query($sql);
$News $db->sql_fetchrow($result);
$Total_News intval($news['nombre_news']);  


Et pour anticiper ta question suivante, afin d'afficher les news qui t'intéressent passent par LIMIT x,y plutôt que le PHP: http://dev.mysql.com/doc/refman/5.0/fr/select.html
Dernière édition par Dr DLP le 15 Juin 2009 à 11:35, édité 2 fois.
Avatar de l’utilisateur
Dr DLP
Floodeur universel
Floodeur universel
 
Messages: 8295
Inscription: 05 Mar 2003 à 22:49
Localisation: Var ( 83 )

Re: Afficher sur un site les posts d'une catégorie

Messagede ekudarius » 15 Juin 2009 à 19:13

Bonjour,

En testant le code que vous m'avez donné, j'ai une erreur :

Erreur générale
SQL ERROR [ mysqli ]

Table 'forum.phpbb_topics' doesn't exist [1146]

Une erreur SQL est arrivée en chargeant cette page. Contactez l’administrateur du forum si ce problème persiste.


J'avoue ne pas tout comprendre :s

Merci d'avance ;)
ekudarius
Posteur néophyte
Posteur néophyte
 
Messages: 55
Inscription: 06 Juin 2009 à 13:43

Re: Afficher sur un site les posts d'une catégorie

Messagede Dr DLP » 15 Juin 2009 à 22:16

C'est écrit dessus...
Remplace par le nom de ta table.
Avatar de l’utilisateur
Dr DLP
Floodeur universel
Floodeur universel
 
Messages: 8295
Inscription: 05 Mar 2003 à 22:49
Localisation: Var ( 83 )

Re: Afficher sur un site les posts d'une catégorie

Messagede ekudarius » 16 Juin 2009 à 00:06

En effet, désolé la fatigue.

Par contre il me renvoit 0 alors qu'il y en à 7 :?
ekudarius
Posteur néophyte
Posteur néophyte
 
Messages: 55
Inscription: 06 Juin 2009 à 13:43

Re: Afficher sur un site les posts d'une catégorie

Messagede ekudarius » 17 Juin 2009 à 12:17

Up :oops:

Je comprend pas j'ai mit le bon id du topic, et me renvoi 0 au lieu de 7.

Merci d'avance.
ekudarius
Posteur néophyte
Posteur néophyte
 
Messages: 55
Inscription: 06 Juin 2009 à 13:43

Re: Afficher sur un site les posts d'une catégorie

Messagede Dr DLP » 17 Juin 2009 à 12:43

Teste la requête dans PHPMyAdmin et supprime les majuscule dans le code que je t'ai donné.
Avatar de l’utilisateur
Dr DLP
Floodeur universel
Floodeur universel
 
Messages: 8295
Inscription: 05 Mar 2003 à 22:49
Localisation: Var ( 83 )

Re: Afficher sur un site les posts d'une catégorie

Messagede ekudarius » 17 Juin 2009 à 18:29

J'ai testé avec requête MySQL :

Code: Tout sélectionner
$retour = mysql_query("SELECT COUNT(topic_id) AS news_total FROM topics WHERE forum_id=" . $id_forum_news . "");
$donnees = mysql_fetch_array($retour);

echo $donnees['news_total'];


Et cela m'affiche bien 7.

D'où peut venir le problème ?

Sinon tant pis je passe avec ce système.
ekudarius
Posteur néophyte
Posteur néophyte
 
Messages: 55
Inscription: 06 Juin 2009 à 13:43

Re: Afficher sur un site les posts d'une catégorie

Messagede Dr DLP » 17 Juin 2009 à 18:38

Code: Tout sélectionner
$news $db->sql_fetchrow($result);
$total_news intval($news['nombre_news']);   

à la place de:
Code: Tout sélectionner
$News $db->sql_fetchrow($result);
$Total_News intval($news['nombre_news']);   

Le php est sensible à la casse, il y a une faute dans ce sens sur mon code plus haut. Dans l'idéal, ne pas se servir du tout des majuscules.
Avatar de l’utilisateur
Dr DLP
Floodeur universel
Floodeur universel
 
Messages: 8295
Inscription: 05 Mar 2003 à 22:49
Localisation: Var ( 83 )

Re: Afficher sur un site les posts d'une catégorie

Messagede ekudarius » 19 Juin 2009 à 19:08

Désolé en plein période d'examens donc pas facile d'avoir beaucoup de temps.

Bref cela fonctionne beaucoup mieux sans les majuscules ;)

Merci beaucoup de ton aide et à bientôt.
ekudarius
Posteur néophyte
Posteur néophyte
 
Messages: 55
Inscription: 06 Juin 2009 à 13:43

Précédente

Retourner vers Aide au développement et à l'adaptation de MODs

 


  • Articles en relation
    Réponses
    Vus
    Dernier message

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité

Liens : phpBB.biz • phpBBHacks.com • phpBB-Seo.com • EzCom-fr.com • phpBB-Services.com • phpBB-Conseils.com • phpBB3 Styles • phpBB podpora • phpBB Portugal • Tapatalk • Net Avenir • PromoBenef • Ticket Gagnant •