spip & galerie photo en flash => la solution xml

Salut,

J’avance un peu sur le pb de générer une galerie flash depuis spip.
Je me suis très largement inspiré d’un tutoriel de Praktica.net (merci à eux).

Côté php, je modifie un fichier gallery.xml situé dans le même répertoire que mon gallery.php, c’est à dire à la racine de mon site spip :

<?php mysql_connect("localhost","root",""); mysql_select_db("database"); $id_article = $HTTP_GET_VARS['id_article']; $qr = mysql_query("SELECT spip_documents.* FROM spip_documents,spip_documents_articles WHERE spip_documents.id_document=spip_documents_articles.id_document AND id_article=1"); // là j'ai pris l'exemple d'un article 1 dans lequel il y aurait toutes mes photos attachées // mais l'idéal serait de pouvoir faire : AND id_article = $id_article avec $id_article transmis // depuis flash... mais alors il faut ensuite modifier le fichier xml pour générer un noeud par // article... enfin je voie ça comme ça... $nrows = mysql_num_rows($qr); $rString = ""; for ($i=0; $i < $nrows; $i++) { $row = mysql_fetch_array($qr); $rString .= ""; } $rString .= ""; echo $rString; $nomFichier = "gallery.xml"; $pointeurFichier = fopen($nomFichier, "w+"); fwrite ($pointeurFichier, $rString); fclose ($pointeurFichier); ?>

ce qui donne dans mon cas le fichier gallery.xml suivant :

et dans le flash (pour les explications, je suis désolé, mais je suis total brêlon en action script) :

// On load le XML en indiquant qu’une fois chargé, on execute la fonction startGALLERY
GALLERY_xml = new XML();
GALLERY_xml.onLoad = startGALLERY;
GALLERY_xml.load(« gallery.xml »);
GALLERY_xml.ignoreWhite = true;

// Init la gallery
function startGALLERY(success) {
if (success == true) {
// La racine du XML
rootNode = GALLERY_xml.firstChild;
// Nombre total des noeuds, donc des images
totalGALLERY = rootNode.childNodes.length;
// Pointe sur la première image
firstGALLERYNode = rootNode.firstChild;
currentGALLERYNode = firstGALLERYNode;
showGALLERY(firstGALLERYNode);
}
}

// Fonction qui affiche une image contenu dans ‹ newGALLERYNode ›
function showGALLERY(newGALLERYNode) {
targetClip.show_image(newGALLERYNode.attributes.IMAGE)
}

// Enfin, les deux fonctions qui s’occupent des flèches suivant et précédent
// Événement sur la flèche droite pour aller chercher l’image suivante.
next_bouton.onRelease = function() {
// nextSibling descend la structure XML
nextGALLERYNode = currentGALLERYNode.nextSibling;
// Si le Noeud est null, alors c’est la fin de la galerie.
if (nextGALLERYNode == null) {
break;
} else {
// On affiche l’image suivante et on place le pointer XML sur le noeud actuel
showGALLERY(nextGALLERYNode);
currentGALLERYNode = nextGALLERYNode;
}
};
//
// Événement sur la flèche de gauche pour aller chercher l’image précédente.
back_bouton.onRelease = function() {
// previousSibling remonte la structure XML
previousGALLERYNode = currentGALLERYNode.previousSibling;
if (previousGALLERYNode == null) {
break;
} else {
currentGALLERYNode = previousGALLERYNode;
showGALLERY(previousGALLERYNode);
}
};

(j’ai repris bêtement le tutoriel de Praktica, et pour l’instant je sais pas encore comment intégrer les titres mais a priori c’est pas trop compliqué, m’a-t-on expliqué…)

en espérant que ça intéresse du monde pour qu’on puisse s’entraider et régler les quelques petits problèmes qui demeurent …

ci-joint les fichiers…

Against

galerie_xml.ace (8.58 KB)

Salut,

J’ai trouvé comment chargé les titres dans ma galerie en flash dynamique (je tiens toujours à la disposition de ceux que cela pourrait intéresser les fichiers php et fla de ma galerie):

// On load le XML en indiquant qu’une fois chargé, on execute la fonction startGALLERY
GALLERY_xml = new XML();
GALLERY_xml.onLoad = startGALLERY;
GALLERY_xml.load(« gallery.xml »);
GALLERY_xml.ignoreWhite = true;

// Init la gallery
function startGALLERY(success) {
if (success == true) {
// La racine du XML
rootNode = GALLERY_xml.firstChild;
// Nombre total des noeuds, donc des images
totalGALLERY = rootNode.childNodes.length;
// Pointe sur la première image
firstGALLERYNode = rootNode.firstChild;
currentGALLERYNode = firstGALLERYNode;
showGALLERY(firstGALLERYNode);
showTITRE(firstGALLERYNode);
}
}

// Fonction qui affiche une image contenu dans ‹ newGALLERYNode ›
function showGALLERY(newGALLERYNode) {
targetClip.show_image(newGALLERYNode.attributes.IMAGE)
}

// Fonction qui affiche le titre
function showTITRE(newGALLERYNode) {
_root.TITRE.htmlText=‹  ›+newGALLERYNode.attributes.TITRE+’ ';
}

// Enfin, les deux fonctions qui s’occupent des flèches suivant et précédent
// Événement sur la flèche droite pour aller chercher l’image suivante.
next_bouton.onRelease = function() {
// nextSibling descend la structure XML
nextGALLERYNode = currentGALLERYNode.nextSibling;
// Si le Noeud est null, alors c’est la fin de la galerie.
if (nextGALLERYNode == null) {
break;
} else {
// On affiche l’image suivante et on place le pointer XML sur le noeud actuel
showGALLERY(nextGALLERYNode);
showTITRE(nextGALLERYNode);
currentGALLERYNode = nextGALLERYNode;
}
};
//
// Événement sur la flèche de gauche pour aller chercher l’image précédente.
back_bouton.onRelease = function() {
// previousSibling remonte la structure XML
previousGALLERYNode = currentGALLERYNode.previousSibling;
if (previousGALLERYNode == null) {
break;
} else {
currentGALLERYNode = previousGALLERYNode;
showGALLERY(previousGALLERYNode);
showTITRE(previousGALLERYNode);
}
};

----- Original Message -----
From: against@free.fr
Newsgroups: gmane.comp.web.spip.user
Sent: Wednesday, March 10, 2004 6:27 PM
Subject: spip & galerie photo en flash => la solution xml

Salut,

J’avance un peu sur le pb de générer une galerie flash depuis spip.
Je me suis très largement inspiré d’un tutoriel de Praktica.net (merci à eux).

Côté php, je modifie un fichier gallery.xml situé dans le même répertoire que mon gallery.php, c’est à dire à la racine de mon site spip :

<?php mysql_connect("localhost","root",""); mysql_select_db("database"); $id_article = $HTTP_GET_VARS['id_article']; $qr = mysql_query("SELECT spip_documents.* FROM spip_documents,spip_documents_articles WHERE spip_documents.id_document=spip_documents_articles.id_document AND id_article=1"); // là j'ai pris l'exemple d'un article 1 dans lequel il y aurait toutes mes photos attachées // mais l'idéal serait de pouvoir faire : AND id_article = $id_article avec $id_article transmis // depuis flash... mais alors il faut ensuite modifier le fichier xml pour générer un noeud par // article... enfin je voie ça comme ça... $nrows = mysql_num_rows($qr); $rString = ""; for ($i=0; $i < $nrows; $i++) { $row = mysql_fetch_array($qr); $rString .= ""; } $rString .= ""; echo $rString; $nomFichier = "gallery.xml"; $pointeurFichier = fopen($nomFichier, "w+"); fwrite ($pointeurFichier, $rString); fclose ($pointeurFichier); ?>

ce qui donne dans mon cas le fichier gallery.xml suivant :

et dans le flash (pour les explications, je suis désolé, mais je suis total brêlon en action script) :

// On load le XML en indiquant qu’une fois chargé, on execute la fonction startGALLERY
GALLERY_xml = new XML();
GALLERY_xml.onLoad = startGALLERY;
GALLERY_xml.load(« gallery.xml »);
GALLERY_xml.ignoreWhite = true;

// Init la gallery
function startGALLERY(success) {
if (success == true) {
// La racine du XML
rootNode = GALLERY_xml.firstChild;
// Nombre total des noeuds, donc des images
totalGALLERY = rootNode.childNodes.length;
// Pointe sur la première image
firstGALLERYNode = rootNode.firstChild;
currentGALLERYNode = firstGALLERYNode;
showGALLERY(firstGALLERYNode);
}
}

// Fonction qui affiche une image contenu dans ‹ newGALLERYNode ›
function showGALLERY(newGALLERYNode) {
targetClip.show_image(newGALLERYNode.attributes.IMAGE)
}

// Enfin, les deux fonctions qui s’occupent des flèches suivant et précédent
// Événement sur la flèche droite pour aller chercher l’image suivante.
next_bouton.onRelease = function() {
// nextSibling descend la structure XML
nextGALLERYNode = currentGALLERYNode.nextSibling;
// Si le Noeud est null, alors c’est la fin de la galerie.
if (nextGALLERYNode == null) {
break;
} else {
// On affiche l’image suivante et on place le pointer XML sur le noeud actuel
showGALLERY(nextGALLERYNode);
currentGALLERYNode = nextGALLERYNode;
}
};
//
// Événement sur la flèche de gauche pour aller chercher l’image précédente.
back_bouton.onRelease = function() {
// previousSibling remonte la structure XML
previousGALLERYNode = currentGALLERYNode.previousSibling;
if (previousGALLERYNode == null) {
break;
} else {
currentGALLERYNode = previousGALLERYNode;
showGALLERY(previousGALLERYNode);
}
};

(j’ai repris bêtement le tutoriel de Praktica, et pour l’instant je sais pas encore comment intégrer les titres mais a priori c’est pas trop compliqué, m’a-t-on expliqué…)

en espérant que ça intéresse du monde pour qu’on puisse s’entraider et régler les quelques petits problèmes qui demeurent …

ci-joint les fichiers…

Against


Hello à tous,
Depuis ce matin, de manière tout à fait surprenante, quand je tente de me connecter (en local) aux pages publiques d’un des sites que je développe en local, j’obtiens une page blanche avec le message suivant: “Site en travaux. Attention: un problème technique (serveur MySQL) empêche l’accès à cette partie du site. Merci de votre compréhension”. Et quand je tente de me connecter au dossier “ecrire”, j’ai aussi une page blanche avec le message “Attention: un problème technique (serveur MySQL) empêche l’accès à cette partie du site. Merci de votre compréhension. 1046 No Database Selected”

Jusqu’à hier soir quand j’ai éteint mon ordi tout fonctionnait parfaitement et maintenant plus moyen d’accéder. En revanche, 2 autres sites en local ne présentent aucun problème et j’accède normalement à toutes leurs pages (publiques et privées)

Si quelqu’un peut m’aider à y voir un peu plus clair car je ne sais vraiment pas par quel bout m’y prendre pour résoudre ce problème. (j’ai déjà relancé le serveur Apache, la base de données MySQL, mais cela n’a rien changé)

Merci d’avance à tous.

Ciao
—Salvino

PS: je travaille sous Mac OS X dernière version, avec un serveur Apache et MySQL (les 2 proveinnent de Server Logistics). Le tout a été installé selon les recommandations de http://edu.ca.edu/article72.html et a très bien fonctionné pendant 2 mois

Il faut vérifier le fichier ecrire/inc-connect. La ligne indiquant les coordonnées de la base sql doivent être mauvaises.

Jérôme

----- Original Message -----
From: Salvino A. Salvaggio
To: spip@rezo.net
Sent: Sunday, March 14, 2004 2:50 PM
Subject: [Spip] Pb acces a la base de donnees

Hello à tous,
Depuis ce matin, de manière tout à fait surprenante, quand je tente de me connecter (en local) aux pages publiques d’un des sites que je développe en local, j’obtiens une page blanche avec le message suivant: “Site en travaux. Attention: un problème technique (serveur MySQL) empêche l’accès à cette partie du site. Merci de votre compréhension”. Et quand je tente de me connecter au dossier “ecrire”, j’ai aussi une page blanche avec le message “Attention: un problème technique (serveur MySQL) empêche l’accès à cette partie du site. Merci de votre compréhension. 1046 No Database Selected”

Jusqu’à hier soir quand j’ai éteint mon ordi tout fonctionnait parfaitement et maintenant plus moyen d’accéder. En revanche, 2 autres sites en local ne présentent aucun problème et j’accède normalement à toutes leurs pages (publiques et privées)

Si quelqu’un peut m’aider à y voir un peu plus clair car je ne sais vraiment pas par quel bout m’y prendre pour résoudre ce problème. (j’ai déjà relancé le serveur Apache, la base de données MySQL, mais cela n’a rien changé)

Merci d’avance à tous.

Ciao
—Salvino

PS: je travaille sous Mac OS X dernière version, avec un serveur Apache et MySQL (les 2 proveinnent de Server Logistics). Le tout a été installé selon les recommandations de http://edu.ca.edu/article72.html et a très bien fonctionné pendant 2 mois



liste spip
spip@rezo.net - désabonnement : spip-off@rezo.net
Infos et archives : http://listes.rezo.net/mailman/listinfo/spip
Documentation de SPIP : http://www.spip.net/
irc://irc.freenode.net/spip

Merci infiniment. Cela refonctionne (il manquait un ‘root’, qui avait sans doute préféré rester dans les nimbes)

Bye
—Salvino

Le 3/14/04 17:01, « Jérôme BREUZET » jbreuzet@wanadoo.fr a écrit :

Il faut vérifier le fichier ecrire/inc-connect. La ligne indiquant les coordonnées de la base sql doivent être mauvaises.

Jérôme

----- Original Message -----

From: Salvino A. Salvaggio mailto:salvino@salvaggio.net

To: spip@rezo.net

Sent: Sunday, March 14, 2004 2:50 PM

Subject: [Spip] Pb acces a la base de donnees

Hello à tous,
Depuis ce matin, de manière tout à fait surprenante, quand je tente de me connecter (en local) aux pages publiques d’un des sites que je développe en local, j’obtiens une page blanche avec le message suivant: “Site en travaux. Attention: un problème technique (serveur MySQL) empêche l’accès à cette partie du site. Merci de votre compréhension”. Et quand je tente de me connecter au dossier “ecrire”, j’ai aussi une page blanche avec le message “Attention: un problème technique (serveur MySQL) empêche l’accès à cette partie du site. Merci de votre compréhension. 1046 No Database Selected”

Jusqu’à hier soir quand j’ai éteint mon ordi tout fonctionnait parfaitement et maintenant plus moyen d’accéder. En revanche, 2 autres sites en local ne présentent aucun problème et j’accède normalement à toutes leurs pages (publiques et privées)

Si quelqu’un peut m’aider à y voir un peu plus clair car je ne sais vraiment pas par quel bout m’y prendre pour résoudre ce problème. (j’ai déjà relancé le serveur Apache, la base de données MySQL, mais cela n’a rien changé)

Merci d’avance à tous.

Ciao
—Salvino

PS: je travaille sous Mac OS X dernière version, avec un serveur Apache et MySQL (les 2 proveinnent de Server Logistics). Le tout a été installé selon les recommandations de http://edu.ca.edu/article72.html et a très bien fonctionné pendant 2 mois



liste spip
spip@rezo.net - désabonnement : spip-off@rezo.net
Infos et archives : http://listes.rezo.net/mailman/listinfo/spip
Documentation de SPIP : http://www.spip.net/
irc://irc.freenode.net/spip

Sorry de poser une autre question sur un problème qui n’est pas directement lié à SPIP mais qui se pose uniquement dans un site SPIP (n’ai jamais eu ce problème avec des simple pages html; mais c’est peut-être un hasard…).

Lorsque je positionne un objet Flash dans un des squelettes de mon site SPIP et que je le fais tourner en local, tout va bien. Lorsque je fais l’upload, l’objet se place à un endroit tout à fait différent sur la page (voir http://www.sylvievanroey.com/ ). Pourquoi et comment y remédier ?

Quelques infos contextuelles:
Le positionnement se fait pas un ligne dans ma feuille de style:
#flash {position:absolute; top:13px; left:128px; z-index:1}

Et dans mon squelette, je reprends simplement

tout le tralala flash

Merci de coup de main
—Salvino

Bonjour,

Dans la 1.7 en multilangue, je cherche à récupérer la langue en cours avec
le paramètre {lang} passé dans un <INCLURE(fichier.php3)>, mais le résultat
donne toujours la langue du site par défaut.
Est-ce fonctionnel, ou dans une CVS en cours ?

. Pierre .

Dans la 1.7 en multilangue, je cherche à récupérer la langue en cours avec
le paramètre {lang} passé dans un <INCLURE(fichier.php3)>, mais le résultat
donne toujours la langue du site par défaut.
Est-ce fonctionnel, ou dans une CVS en cours ?

C'est fonctionnel dans la version CVS, mais pas dans la 1.7 "officielle"

-- Fil

Est-ce que l'activation du critère {lang} peut se faire en récupérant un ou
deux fichiers dans la CVS pour " patcher " mes sites en 1-7 ? Ou est-ce que
les changements ont un impact sur un trop grand nombre de fichiers pour une
approche chirurgicale? (À moins que la CVS est particulièrement stable...)

J'hésite à mettre une version CVS entière sur un site public, mais je me
frappe presque chaque jour de développement au problème de l'absence de
critère {lang} sur 1.7 et ça serait rudement utile de l'avoir. :stuck_out_tongue:

Merci!

Thierry Gagnon,
Studio Eau Moirée
http://thierrygagnon.com/

-----Message d'origine-----
De : spip-bounces@rezo.net [mailto:spip-bounces@rezo.net]De la part de Fil
Envoyé : 15 mars, 2004 10:43
À : Pierre Jahan
Cc : spip@rezo.net
Objet : Re: [Spip] contexte {lang} dans INCLURE

Dans la 1.7 en multilangue, je cherche à récupérer la langue en cours avec
le paramètre {lang} passé dans un <INCLURE(fichier.php3)>, mais le

résultat

donne toujours la langue du site par défaut.
Est-ce fonctionnel, ou dans une CVS en cours ?

C'est fonctionnel dans la version CVS, mais pas dans la 1.7 "officielle"

-- Fil

_______________________________________________
liste spip
spip@rezo.net - désabonnement : spip-off@rezo.net
Infos et archives : http://listes.rezo.net/mailman/listinfo/spip
Documentation de SPIP : http://www.spip.net/
irc://irc.freenode.net/spip

passage à la 1.7
bon suite à cette faille de sécurité , je me dis qu'il
faut que je passe à la 1.7

avec douleur puisque depuis ma derniere tentative de
passage 1.5.2 vers 1.7 où j'avais l'erreur :

"Fatal error: Call to undefined function:
spip_fetch_array() in
/home/fdmjc/www/ecrire/inc_meta.php3 on line 15"

j'hésite à retenter le passage,

Que faut il faire de spécial, nicolas me conseille de
supprimer le dossier inc_connect.php3

merci,

Pierre

=====
Pierre

Yahoo! Mail : votre e-mail personnel quelque soit votre fournisseur d’accès - avec anti-virus gratuit !
Créez votre Yahoo! Mail sur http://fr.benefits.yahoo.com/

Dialoguez en direct avec vos amis grâce à Yahoo! Messenger !Téléchargez Yahoo! Messenger sur http://fr.messenger.yahoo.com

Nicolas a raison...

C'est ce que j'ai fait dernièrement pour passer aussi de la 1.52 à la 1.7
(suite à des récriminations de OVH...)

BMR

-----Message d'origine-----
De : spip-bounces@rezo.net [mailto:spip-bounces@rezo.net]De la part de
Pierre
Envoyé : mardi 16 mars 2004 10:18
À : Fil; Pierre Jahan
Cc : spip@rezo.net
Objet : [Spip] j'aimerais passer de la 1.5.2 à la 1.7

passage à la 1.7
bon suite à cette faille de sécurité , je me dis qu'il
faut que je passe à la 1.7

avec douleur puisque depuis ma derniere tentative de
passage 1.5.2 vers 1.7 où j'avais l'erreur :

"Fatal error: Call to undefined function:
spip_fetch_array() in
/home/fdmjc/www/ecrire/inc_meta.php3 on line 15"

j'hésite à retenter le passage,

Que faut il faire de spécial, nicolas me conseille de
supprimer le dossier inc_connect.php3

merci,

Pierre

=====
Pierre

Yahoo! Mail : votre e-mail personnel quelque soit votre fournisseur d’
ccès - avec anti-virus gratuit !
Créez votre Yahoo! Mail sur http://fr.benefits.yahoo.com/

Dialoguez en direct avec vos amis grâce à Yahoo! Messenger !Téléchargez
Yahoo! Messenger sur http://fr.messenger.yahoo.com
_______________________________________________
liste spip
spip@rezo.net - désabonnement : spip-off@rezo.net
Infos et archives : http://listes.rezo.net/mailman/listinfo/spip
Documentation de SPIP : http://www.spip.net/
irc://irc.freenode.net/spip

BMR wrote:

Nicolas a raison...
( ... nicolas ...conseille de supprimer le dossier inc_connect.php3 )

Perso, pour l'upgrade d'une 1.4.2
quand je supprime inc_connect.php3,
c'est à nouveau une Internal Server Error,
qui a lieu, l'adresse affichée étant spip_test_dirs.php3 ...
JL

j'ai tout sauvegardé,
cela veut dire quoi maintenant ?
supprimer inc_connect.php3 sur le serveur avant
d'envoyer l'intégralité des fichiers spip 1.7 ou apres
?

Merci

--- BMR <bmr@ediweb.org> a écrit : > Nicolas a
raison...

C'est ce que j'ai fait dernièrement pour passer
aussi de la 1.52 à la 1.7
(suite à des récriminations de OVH...)

BMR

=====
Pierre

Yahoo! Mail : votre e-mail personnel et gratuit qui vous suit partout !
Créez votre Yahoo! Mail sur http://fr.benefits.yahoo.com/

Dialoguez en direct avec vos amis grâce à Yahoo! Messenger !Téléchargez Yahoo! Messenger sur http://fr.messenger.yahoo.com