IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

EDI, CMS, Outils, Scripts et API PHP Discussion :

Jcomment -> commentcount [Joomla!]


Sujet :

EDI, CMS, Outils, Scripts et API PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Août 2010
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 10
    Par défaut Jcomment -> commentcount
    Bonjour, j'essaie de recuperer le nbr de commentaire de chaques news, dans mon module latestnews que je suis en train de personnaliser, malheureusement ça ne marche pas:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    if ($comments==(1)){
    				$filename = 'components/com_jcomments/jcomments.php';
     
    				if (file_exists($filename)){
    					require_once ($filename);
     
    					$jcount = JComments::getCommentsCount($row->id, 'com_content');
    					$lists[$i]->comments  = $jcount ? ('Comments: '. $jcount . '') : ('Add comment');
     
     
    				} else {
    					$lists[$i]->comments =  'OOOPS ! '.$filename.' does not exist. Are you sure if the installation of Jcomment went well?';
    				}
    			}
    Je fais appelle à la fonction deja existante dans le composant, mais il ne se passe rien, j'ai toujours mon "Add comment" qui reste affiché. Merci de bien vouloir m'aider : )

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2009
    Messages
    625
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 625
    Par défaut
    euh... pourquoi mettre des parenthèses à 1 ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    if ($comments == 1){
     
    // Instructions...
     
    }

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Août 2010
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 10
    Par défaut
    Je sais pas c'est une habitude que j'ai pris.

    donc finalement j'ai une piste, j'ai regardé dans des resultats sql:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    if ($comments){
    				$query = 'SELECT COUNT(*) FROM #__jcomments WHERE object_id = ' . $row->id ;
    				$db->setQuery($query);
    				$lists[$i]->comments = $db->loadResult();
    			}
    et j'ai remarqué que tous les commentaires récupéraient le même id (62), mais encore plus bizarre que l'article avec l'id (62) n'existe tous simplement pas !

    Allors j'ai essayé manuellement de récupérer un id et ça fonctionne !

    J'imagine alors que mon probleme vient de mon query:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    $query = 'SELECT a.*, u.id, u.name,' .
    			' CASE WHEN CHAR_LENGTH(a.alias) THEN CONCAT_WS(":", a.id, a.alias) ELSE a.id END as slug,'.
    			' CASE WHEN CHAR_LENGTH(cc.alias) THEN CONCAT_WS(":", cc.id, cc.alias) ELSE cc.id END as catslug'.
    			' FROM #__content AS a' .
    			($show_front == '0' ? ' LEFT JOIN #__content_frontpage AS f ON f.content_id = a.id' : '') .
    			' LEFT JOIN #__users AS u ON u.id = a.created_by' .
    			' INNER JOIN #__categories AS cc ON cc.id = a.catid' .
    			' INNER JOIN #__sections AS s ON s.id = a.sectionid' .
    			' WHERE '. $where .' AND s.id > 0' .
    			($access ? ' AND a.access <= ' .(int) $aid. ' AND cc.access <= ' .(int) $aid. ' AND s.access <= ' .(int) $aid : '').
    			($catid ? $catCondition : '').
    			($secid ? $secCondition : '').
    			($show_front == '0' ? ' AND f.content_id IS NULL ' : '').
    			' AND s.published = 1' .
    			' AND cc.published = 1' .
    			' ORDER BY '. $ordering;
    		$db->setQuery($query, 0, $count);
    		$rows = $db->loadObjectList();

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Août 2010
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 10
    Par défaut Trouvé !
    j'ai fait des recherches sur l'id 62 et enfaite ils s'agit tout simplement de l'id de l'aministrateur ! Donc enfaite le probleme venait bel et bien de de ma requete sql.

    donc
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $query = 'SELECT a.*, u.id, u.name,' .
    devient
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $query = 'SELECT a.*,u.id as user_id, u.name,' .

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Joomla!] installation du composant jcomments
    Par DiverSIG dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 1
    Dernier message: 31/01/2014, 15h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo