Problème de template sur joomla 2.5

Si vous n'arrivez pas à configurer le composant pour votre collection...
ovni
Messages : 29
Enregistré le : mar. 22 févr. 2011 12:22

Problème de template sur joomla 2.5

Message par ovni »

Bonjour,

déjà merci et félicitation pour cette nouvelle version. Si je puis me permettre un petit conseil sur l'installation lors d'une migration de joomla 1.5 vers 2.5, il peut être bien d'inclure les DROP TABLE dans le script lors du rapatriement des données sur la 2.5... j'ai eu quelques souci de compatibilité entre les tables.

Maintenant que j'ai bien récupéré toutes mes données, mon problème est le suivant:
Lorsque j'accède à la page de collection j'ai bien le message d'en-tête mais pas les données. J'obtiens les 2 messages suivant:
En début de page
"Warning: Invalid argument supplied for foreach() in /home/lesze345/public_html/J2.5/components/com_collector/models/collection.php on line 1424"

En fin de page
"Warning: Invalid argument supplied for foreach() in /home/lesze345/public_html/J2.5/components/com_collector/views/collection/tmpl/default.php on line 285"

Au vu du message je me suis immédiatement dirigé vers l'onglet templates de l’administration de collector. Là, je n'obtiens que le message "indisponible". Dans la base, il y'a bien les enregistrements des 2 modes par défaut.

Si vous avez une idée, pour m'aider...

Merci

Avatar du membre
steevo
Administrateur du site
Messages : 330
Enregistré le : jeu. 17 déc. 2009 22:59
Contact :

Re: Problème de template sur joomla 2.5

Message par steevo »

Bonjour,

la partie template a été désactivée dans cette version car trop compliquée pour le moment. Je préférais avancer sur les autres fonctionnalités.

Pour votre message d'erreur, je pense qu'il y a un problème au niveau d'un nom de champ d'une table. Soit la table jos_collector_fields ou jos_collector_fields_type
Normalement pour jos_collector_fields :
  • id
  • asset_id
  • collection
  • field
  • description
  • tablecolumn
  • type
  • ordering
  • state
  • created
  • created_by
  • created_by_alias
  • modified
  • modified_by
  • publish_up
  • publish_down
  • checked_out
  • checked_out_time
  • required
  • access
  • home
  • unik
  • edit
  • listing
  • filter
  • sort
  • attribs
et pour jos_collector_fields_type :
  • id
  • type
  • unikable
  • sortable
  • searchable
  • filterable
Est-ce que cela correspond à ce que vous avez ?

ovni
Messages : 29
Enregistré le : mar. 22 févr. 2011 12:22

Re: Problème de template sur joomla 2.5

Message par ovni »

Bonjour,
merci beaucoup pour votre réponse.
C'est efféctivement les champs qui se trouve dans ma BDD.
Auriez vous une autre piste?

Si cela peut aider, voici le message exact en début de page :

Warning: Invalid argument supplied for foreach() in /home/lesze345/public_html/J2.5/components/com_collector/models/collection.php on line 1424

Warning: Invalid argument supplied for foreach() in /home/lesze345/public_html/J2.5/components/com_collector/models/collection.php on line 1445

Warning: Invalid argument supplied for foreach() in /home/lesze345/public_html/J2.5/components/com_collector/models/collection.php on line 1526

Warning: Invalid argument supplied for foreach() in /home/lesze345/public_html/J2.5/components/com_collector/models/collection.php on line 1424

Warning: Invalid argument supplied for foreach() in /home/lesze345/public_html/J2.5/components/com_collector/models/collection.php on line 1445

Warning: Invalid argument supplied for foreach() in /home/lesze345/public_html/J2.5/components/com_collector/models/collection.php on line 1526

Warning: mysqli_num_rows() expects parameter 1 to be mysqli_result, boolean given in /home/lesze345/public_html/J2.5/libraries/joomla/database/database/mysqli.php on line 263

Warning: mysqli_num_rows() expects parameter 1 to be mysqli_result, boolean given in /home/lesze345/public_html/J2.5/libraries/joomla/database/database/mysqli.php on line 263

Warning: Invalid argument supplied for foreach() in /home/lesze345/public_html/J2.5/components/com_collector/views/collection/tmpl/default.php on line 199



Et celui-ci en dessous du filtre :
Warning: Invalid argument supplied for foreach() in /home/lesze345/public_html/J2.5/components/com_collector/views/collection/tmpl/default.php on line 285

Merci

Avatar du membre
steevo
Administrateur du site
Messages : 330
Enregistré le : jeu. 17 déc. 2009 22:59
Contact :

Re: Problème de template sur joomla 2.5

Message par steevo »

Bonjour,

Il semble y avoir un problème pour récupérer les champs.

Dans le fichier /components/com_collector/models/collection.php
rajoutez à la ligne 1365 le code suivant :

Code : Tout sélectionner

echo $query;
Maintenant la requête va apparaître vers le haut de la page.

Pouvez-vous m'indiquez cette requête ?

ovni
Messages : 29
Enregistré le : mar. 22 févr. 2011 12:22

Re: Problème de template sur joomla 2.5

Message par ovni »

Bonjour,
merci pour votre réponse rapide et désolé pour le retard de la mienne.

Voici ce que me renvoi comme message l'ajout de la ligne dans le code :

SELECT f.*, u.name AS author, u.usertype,t.type AS type FROM #__collector_fields AS f LEFT JOIN #__collector_fields_type AS t ON t.id = f.type LEFT JOIN #__users AS u ON u.id = f.created_by WHERE collection = 2 AND ( f.created_by = 0 OR ( f.state = 1 AND ( f.publish_up = '0000-00-00 00:00:00' OR f.publish_up <= '2012-06-02 22:35:15' ) AND ( f.publish_down = '0000-00-00 00:00:00' OR f.publish_down >= '2012-06-02 22:35:15' ) ) ) AND f.access IN (1,1) ORDER BY ordering SELECT f.*, u.name AS author, u.usertype,t.type AS type FROM #__collector_fields AS f LEFT JOIN #__collector_fields_type AS t ON t.id = f.type LEFT JOIN #__users AS u ON u.id = f.created_by WHERE collection = 2 AND ( f.created_by = 0 OR ( f.state = 1 AND ( f.publish_up = '0000-00-00 00:00:00' OR f.publish_up <= '2012-06-02 22:35:15' ) AND ( f.publish_down = '0000-00-00 00:00:00' OR f.publish_down >= '2012-06-02 22:35:15' ) ) ) AND f.access IN (1,1) ORDER BY ordering
Warning: Invalid argument supplied for foreach() in /home/lesze345/public_html/J2.5/components/com_collector/models/collection.php on line 1424

Warning: Invalid argument supplied for foreach() in /home/lesze345/public_html/J2.5/components/com_collector/models/collection.php on line 1445
SELECT f.*, u.name AS author, u.usertype,t.type AS type FROM #__collector_fields AS f LEFT JOIN #__collector_fields_type AS t ON t.id = f.type LEFT JOIN #__users AS u ON u.id = f.created_by WHERE collection = 2 AND ( f.created_by = 0 OR ( f.state = 1 AND ( f.publish_up = '0000-00-00 00:00:00' OR f.publish_up <= '2012-06-02 22:35:15' ) AND ( f.publish_down = '0000-00-00 00:00:00' OR f.publish_down >= '2012-06-02 22:35:15' ) ) ) AND f.access IN (1,1) ORDER BY ordering
Warning: Invalid argument supplied for foreach() in /home/lesze345/public_html/J2.5/components/com_collector/models/collection.php on line 1526
SELECT f.*, u.name AS author, u.usertype,t.type AS type FROM #__collector_fields AS f LEFT JOIN #__collector_fields_type AS t ON t.id = f.type LEFT JOIN #__users AS u ON u.id = f.created_by WHERE collection = 2 AND ( f.created_by = 0 OR ( f.state = 1 AND ( f.publish_up = '0000-00-00 00:00:00' OR f.publish_up <= '2012-06-02 22:35:15' ) AND ( f.publish_down = '0000-00-00 00:00:00' OR f.publish_down >= '2012-06-02 22:35:15' ) ) ) AND f.access IN (1,1) ORDER BY ordering
Warning: Invalid argument supplied for foreach() in /home/lesze345/public_html/J2.5/components/com_collector/models/collection.php on line 1424

Warning: Invalid argument supplied for foreach() in /home/lesze345/public_html/J2.5/components/com_collector/models/collection.php on line 1445
SELECT f.*, u.name AS author, u.usertype,t.type AS type FROM #__collector_fields AS f LEFT JOIN #__collector_fields_type AS t ON t.id = f.type LEFT JOIN #__users AS u ON u.id = f.created_by WHERE collection = 2 AND ( f.created_by = 0 OR ( f.state = 1 AND ( f.publish_up = '0000-00-00 00:00:00' OR f.publish_up <= '2012-06-02 22:35:15' ) AND ( f.publish_down = '0000-00-00 00:00:00' OR f.publish_down >= '2012-06-02 22:35:15' ) ) ) AND f.access IN (1,1) ORDER BY ordering
Warning: Invalid argument supplied for foreach() in /home/lesze345/public_html/J2.5/components/com_collector/models/collection.php on line 1526

Warning: mysqli_num_rows() expects parameter 1 to be mysqli_result, boolean given in /home/lesze345/public_html/J2.5/libraries/joomla/database/database/mysqli.php on line 263

Warning: mysqli_num_rows() expects parameter 1 to be mysqli_result, boolean given in /home/lesze345/public_html/J2.5/libraries/joomla/database/database/mysqli.php on line 263

Warning: Invalid argument supplied for foreach() in /home/lesze345/public_html/J2.5/components/com_collector/views/collection/tmpl/default.php on line 199


Merci beaucoup!

Avatar du membre
steevo
Administrateur du site
Messages : 330
Enregistré le : jeu. 17 déc. 2009 22:59
Contact :

Re: Problème de template sur joomla 2.5

Message par steevo »

Donc la requête a l'air bien construite.
ovni a écrit : SELECT f.*, u.name AS author, u.usertype,t.type AS type FROM #__collector_fields AS f LEFT JOIN #__collector_fields_type AS t ON t.id = f.type LEFT JOIN #__users AS u ON u.id = f.created_by WHERE collection = 2 AND ( f.created_by = 0 OR ( f.state = 1 AND ( f.publish_up = '0000-00-00 00:00:00' OR f.publish_up <= '2012-06-02 22:35:15' ) AND ( f.publish_down = '0000-00-00 00:00:00' OR f.publish_down >= '2012-06-02 22:35:15' ) ) ) AND f.access IN (1,1) ORDER BY ordering
Est-ce vous pouvez la lancer directement via phpmyadmin en remplaçant #__ par le préfixe de table choisi lors de l'installation? Là on verra bien l'erreur retournée par la requête.

ovni
Messages : 29
Enregistré le : mar. 22 févr. 2011 12:22

Re: Problème de template sur joomla 2.5

Message par ovni »

Pas de problème de ce coté là,
MySQL a retourné un résultat vide (aucune ligne).
Pour info, j'ai bien remplacé #__ (avec 2 underscores) par prefixe_ (avec un underscore).

Merci beaucoup.

Avatar du membre
steevo
Administrateur du site
Messages : 330
Enregistré le : jeu. 17 déc. 2009 22:59
Contact :

Re: Problème de template sur joomla 2.5

Message par steevo »

Tiens c'est bizarre ça. Cela voudrait dire qu'il n'y a aucun champ défini pour la collection...

Côté backend, il n'y a pas de problème? Vous avez bien vos objets?

ovni
Messages : 29
Enregistré le : mar. 22 févr. 2011 12:22

Re: Problème de template sur joomla 2.5

Message par ovni »

J'ai bien les objets en backend ce qui me parait effectivement très bizarre...

ovni
Messages : 29
Enregistré le : mar. 22 févr. 2011 12:22

Re: Problème de template sur joomla 2.5

Message par ovni »

Le problème vient de jnew_collector_fields : access. Ils sont tous a 0. Je viens de tout changer en 1 et ça marche. Serait-ce un peu barbare???
Merci beaucoup

Répondre