Bonjour, voilà, après un fort long moment, je me suis repris l'envie de faire fonctionner ce super système et j'y suis cette fois arrivé... (merci à l'entraînement
)
Pour comprendre comment fonctionne ce filmstrip, tout d'abord, il faut comprendre que les fichiers Flash (main.swf et flashthumb.swf) vont chercher l'adresse des images à afficher dans un "fichier" XML. Ce fichier XML est créé dynamiquement par le fichier
flashthumb.php , c'est celui ci que vous devez éditer pour qu'il réfère correctement l'adresse des images de votre gallerie de photos. Attention lors de 'édition de ce fichier, lorsqu'il est lancé seul (directement, en l'entrant dans la barre d'adresse), le contenu doit être uniquement du contenu XML (<?xml ...... ).
Ce fichier (flashthumb.php) est lancé directement par le flash (main ou flashthumb). D'où l'importance de l'ecrire correctement pour qu'il soit
'autonome' (qu'il est l'accès à la base de données tout seul).
Dans le post précédent, vous voyez donc le code original pour que ça fonctionne avec une gallerie Coppermine "pure" (qui n'est pas intégré/hacké).
Maintenant, si vous voulez l'utiliser avec une gallerie photos montée dans un autre système de site web, vous devez transformer ce fichier afin qu'il aille farfouiller dans votre base de données les photos existantes et qu'il renvoit l'adresse correcte.
Voici ce que ça donne avec le CMS e107 :
<?php
require_once("../../class2.php");
$xml = '<?xml version="1.0" encoding="UTF-8" ?> <slideshow><settings><image_folder></image_folder><time>5</time><fade>3</fade><repeat>true</repeat><captions>false</captions></settings><images>';
$sql->db_Select("CPG_pictures","filepath,filename"," filename LIKE '%.jpg' ORDER BY RAND() LIMIT 16");
while ($row = $sql->db_Fetch())
{
$type = 'thumb';
$xml .= "<image><file><![CDATA[albums/". $row['filepath']."thumb_".$row['filename'] ."]]></file><caption></caption></image>";
}
$xml .= '</images></slideshow>';
echo $xml;
?>
Quelle est la différence ?
De 1, vous voyez qu'il n'y a plus de référence (
require(...)) à des fichiers de coppermine, ce code n'utilise que les fonctions propres au CMS e107.
Pourquoi ? Parce que lors du lancement de la référence
require('include/init.inc.php');, le pont qui est constitué entre la gallerie photo Coppermine et le CMS e107 lançait le
thème du CMS e107. C'est à dire que le site web était en partie activé, donc le contenu renvoyé lors de l'activation de flashthumb.php n'était pas simplement un contenu XML.
Bref, de cette façon, vous créez un fichier contenant purement que du XML.
Donc, pour vous assurer que votre fichier est correctement construit, lancez le fichier flashthumb.php directement à partir de la barre d'adresse et ensuite vérifiez le code source de la page obtenue (Affichage/Code source). Vérifiez si le code est bien formé (surtout l'adressage des images), voici un exemple de ce qui doit être obtenu :
<?xml version="1.0" encoding="UTF-8" ?> <slideshow>
<settings>
<image_folder></image_folder>
<time>5</time>
<fade>3</fade>
<repeat>true</repeat>
<captions>false</captions>
</settings>
<images>
<image>
<file><![CDATA[albums/mechoui/thumb_IMG14.jpg]]></file>
<caption></caption></image>
<image>
<file><![CDATA[albums/mechoui/thumb_IMG17.JPG]]></file>
</images>
</slideshow>
Si vous obtenez quelque chose du genre, vous devriez avoir réussi ^_^