Help php et javascript (FANCYBOX)
Fermé
MIDO-MIDO
Messages postés
24
Date d'inscription
dimanche 27 avril 2008
Statut
Membre
Dernière intervention
15 octobre 2014
-
Modifié par MIDO-MIDO le 7/04/2011 à 22:26
MIDO-MIDO Messages postés 24 Date d'inscription dimanche 27 avril 2008 Statut Membre Dernière intervention 15 octobre 2014 - 7 avril 2011 à 22:27
MIDO-MIDO Messages postés 24 Date d'inscription dimanche 27 avril 2008 Statut Membre Dernière intervention 15 octobre 2014 - 7 avril 2011 à 22:27
A voir également:
- Help php et javascript (FANCYBOX)
- Telecharger javascript - Télécharger - Langages
- Easy php - Télécharger - Divers Web & Internet
- Node.js javascript runtime virus ✓ - Forum Virus
- Get_magic_quotes_gpc php 8 ✓ - Forum PHP
- Erreur #125 javascript - Forum Mozilla Firefox
4 réponses
wyllyjon
Messages postés
30
Date d'inscription
mardi 5 avril 2011
Statut
Membre
Dernière intervention
8 avril 2011
6
Modifié par wyllyjon le 7/04/2011 à 09:12
Modifié par wyllyjon le 7/04/2011 à 09:12
Salut !
Ce que tu demande n'est pas prévu par fancybox. Il te faut donc te débrouiller pour passer ta date de ton php à ton code html et ensuite le récupérer dans la fonction titleFormat pour pouvoir l'afficher.
Le truc le plus rapide à faire que je vois, c'est, dans ton code php, lorsque tu créé le lien echo "<a rel='afftoutgroup' href='categories/$folder/$nom' title='$titre'><img src='categories/$folder/$nom' title='$titre' width='75' height='75'/></a>";
tu peux créer également un input hidden du genre :
echo "<input type='hidden' id='hidden_".$image['titre']." value='".$image['date']."'/>";
que tu récupérera ensuite dans ta méthode comme suit :
'titleFormat': function (title, currentArray, currentIndex, currentOpts) {
var date = document.getElementById("hidden_" + title).value;
return '<span id="fancybox-title-over">Image ' + (currentIndex + 1) + ' / ' + currentArray.length + (title.length ? ' ' + title : '') + ' ' + date +'</span>';
}
et ainsi, tu devrais avoir ta date qui est récupérée (avec peut-être quelques petites erreurs vu que je n'ai pas testé, mais ça devrait être pas trop mal :-P)
Attention ! Il faut absolument que tu n'ais jamais deux fois le même titre, sinon ça ne fonctionne plus (car on aurait deux input avec le même Id, ce qui n'est vraiment pas bon).
Il y a une solution moins moche qu'il te faudrait tester :
voir si dans ta fonction "titleFormat" tu peux récupérer le lien sur lequel tu as cliqué (avec 'this'), ce qui est possible, mais pas sûr étant donné que je ne sais pas comment est appelé cette fonction dans le code de fancybox.
Si jamais tu peux le récupérer, rajoute-lui juste un attribut contenant ta date, et dans la fonction tu récupère cet attribut et tu l'ajoute dans le "return" pour qu'il soit affiché comme ça a été fait au dessus dans mon code.
C'est un peu brouillon tout ça, mais j'espère que ça pourra t'être utile !
Expert technologies web et java.
Ce que tu demande n'est pas prévu par fancybox. Il te faut donc te débrouiller pour passer ta date de ton php à ton code html et ensuite le récupérer dans la fonction titleFormat pour pouvoir l'afficher.
Le truc le plus rapide à faire que je vois, c'est, dans ton code php, lorsque tu créé le lien echo "<a rel='afftoutgroup' href='categories/$folder/$nom' title='$titre'><img src='categories/$folder/$nom' title='$titre' width='75' height='75'/></a>";
tu peux créer également un input hidden du genre :
echo "<input type='hidden' id='hidden_".$image['titre']." value='".$image['date']."'/>";
que tu récupérera ensuite dans ta méthode comme suit :
'titleFormat': function (title, currentArray, currentIndex, currentOpts) {
var date = document.getElementById("hidden_" + title).value;
return '<span id="fancybox-title-over">Image ' + (currentIndex + 1) + ' / ' + currentArray.length + (title.length ? ' ' + title : '') + ' ' + date +'</span>';
}
et ainsi, tu devrais avoir ta date qui est récupérée (avec peut-être quelques petites erreurs vu que je n'ai pas testé, mais ça devrait être pas trop mal :-P)
Attention ! Il faut absolument que tu n'ais jamais deux fois le même titre, sinon ça ne fonctionne plus (car on aurait deux input avec le même Id, ce qui n'est vraiment pas bon).
Il y a une solution moins moche qu'il te faudrait tester :
voir si dans ta fonction "titleFormat" tu peux récupérer le lien sur lequel tu as cliqué (avec 'this'), ce qui est possible, mais pas sûr étant donné que je ne sais pas comment est appelé cette fonction dans le code de fancybox.
Si jamais tu peux le récupérer, rajoute-lui juste un attribut contenant ta date, et dans la fonction tu récupère cet attribut et tu l'ajoute dans le "return" pour qu'il soit affiché comme ça a été fait au dessus dans mon code.
C'est un peu brouillon tout ça, mais j'espère que ça pourra t'être utile !
Expert technologies web et java.
MIDO-MIDO
Messages postés
24
Date d'inscription
dimanche 27 avril 2008
Statut
Membre
Dernière intervention
15 octobre 2014
Modifié par MIDO-MIDO le 7/04/2011 à 10:10
Modifié par MIDO-MIDO le 7/04/2011 à 10:10
bonjour wily merci pour vos conseils j'ai fais ceci mais ca na rien donner , l'image ne s'agrandit plus
javascript:
page php:
javascript:
$("#afftout").click(function () { $('title').html('Affichage de toutes les photos'); $("#apDiv5 div").hide(); $("#affou").show(); $.ajax({ url: "php/afftt.php", success: function (res) { $("#afftou").html(res); $("a[rel=afftoutgroup]").fancybox({ 'transitionIn': 'none', 'transitionOut': 'none', 'titlePosition': 'over', 'titleFormat': function (title, currentArray, currentIndex, currentOpts) { var date = document.getElementById("hidden_" + title).value; return '<span id="fancybox-title-over">Image ' + (currentIndex + 1) + ' / ' + currentArray.length + (title.length ? ' ' + title : '') + ' ' + date + '</span>'; } }); } });
page php:
<?php require('connect.php'); $query="select * from images "; $result=mysql_query($query)or die(mysql_error()); while($image=mysql_fetch_assoc($result)){ $folder=$image['folder']; $nom=$image['nom']; $titre=$image['titre']; $date=$image['date']; echo "<a rel='afftoutgroup' href='categories/$folder/$nom' title='$titre'><img src='categories/$folder/$nom' title='$titre' width='75' height='75'/></a>"; echo "<input type='hidden' id='hidden_".$image['titre']." value='".$image['date']."'/>"; } ?>
wyllyjon
Messages postés
30
Date d'inscription
mardi 5 avril 2011
Statut
Membre
Dernière intervention
8 avril 2011
6
7 avril 2011 à 10:17
7 avril 2011 à 10:17
Peux-tu me donner le code html généré par le php stp ?
Merci
Merci
MIDO-MIDO
Messages postés
24
Date d'inscription
dimanche 27 avril 2008
Statut
Membre
Dernière intervention
15 octobre 2014
7 avril 2011 à 10:26
7 avril 2011 à 10:26
je ne vous est pas trop compris vous voulez le code html de la page:
<div id="apDiv5"> <div id="apDiv1"> <form name="f1" action="upload.php" method="post" enctype="multipart/form-data" target="resultat"> <fieldset id="container"> <legend>Image</legend> <label for="file">Fichier</label> <input type="file" name="file" size="50" /> <label for="titre">Titre : </label> <input type="text" name="titre" size="30" id="titre" /> <label for="sous-titre">Sous-titre : </label> <input type="text" name="soustitre" size="30" id="sous-titre" /> <label for="lieu">Lieu : </label> <input type="text" name="lieu" size="30" /> <label for="description">Description : </label> <textarea name="description" cols="20" rows="4" id="description">Décrire votre image</textarea> <label for="date">Date :</label><input type="text" size="11" name="date" id="date"/> <label for='categories'>Catégorie : </label> <select id='categories' name='categories' > <option value='none'>Choisissez une catégorie ...</option> <?php include("liste.php"); ?> <option value='ajout' id='lastoption' >Ajouter une catégorie ...</option> </select> <input type="submit" value="Envoyer" id="submit" class="bout" /> <input type="reset" value="Annuler" class="bout" /> </form> </fieldset> </div> <div id="apDiv3"> <form name="f2" action="createdir.php" method="post"> <label for="addcat" id="labaddcat">Nouvelle catégorie :</label> <input style="margin-top:2px;margin-bottom:10px"type="text" name="cat" size="30" value="Entrez une catégorie" id="add_cat"/> <input style="margin-left:10px; margin-top:5px;" type="text" name="cat_desc" size="30" value="Description de catégorie" id="add_cat_desc"/> <input class="bout" type="submit" value="Ajouter" name="ajout_cat" id="ajout_cat"/> </form> </div> <div id="apDiv2"> <div class="barre"> <input type="button" name="fermer" id="close" value="x" class="close"/> </div> <iframe name="resultat" id="frame"> </iframe> </div> <div id="content"> <form autocomplete="off" > <label for="rtitre">Titre de l'image</label> <input type="text" name="rtitre" id="rtitre" size="30"/> <input type="submit" value="Valider" id="submit2" /> <input type="hidden" name="titres" id="titres" /> </form> </div> <div id="galcat"> <label for="cats"></label> <form name="faffcat"> <select name="cats" id="cats"> <option value='none'>Choisissez une catégorie ...</option> <?php include("liste.php"); ?> </select> <input type="button" name="baffcat" id="baffcat" value="afficher"/> </form> <div id="galcatimgs"> </div> </div> <!-- Recherche des photos avec une date --> <div id="rdate"> <form name="frdate"> <label for="datepicker">Entrez une date :</label> <input type="text" name="date1" id="date1" value="date de debut"> <input type="text" name="date2" id="date2" value="date de fin"> <input type="button" name="send" value="chercher" id="cherdate"/> </form> <div id="cherdateimgs"> </div> </div> <div id="panmodphoto"> <label for="rmtitle">Titre de l'image :</label> <input type="button" value="Afficher" id="bmod" /> <div id="panelmod"> <form name="fmodphoto"> <label for="mptitle">Nouveau titre :</label> <input type="text" id="mptitle" /> <label for="mpsectitle">Nouveau sous-titre :</label> <input type="text" id="mpsectitle" /> <label for="mplieu">Nouveau lieu :</label> <input type="text" id="mplieu" /> <label for="mpdesc">Nouvelle description :</label> <textarea cols="20" rows="4" id="mpdesc" ></textarea> <label for="mpdesc">Nouvelle catégorie :</label> <select name="cats" id="mpcats"> <option value='none'>Choisissez une catégorie ...</option> <?php require("liste.php"); ?> </select> <input type="button" value="Modifier" id="mpmod" /> </form> </div> </div> <div id="pansuppphoto"> <form autocomplete="off" > <label for="rmtitle">Titre de l'image :</label> <input type="text" id="rmtitle" size="30"/><input type="button" id="rmphotobutton" value="Afficher"/> <div id="rmphotoimgs"> </div> </form> </div> <div id="psuppcat"> <input type="button" value="Supprimer" id="supp_cat"/> </div> <div id="rename_cat"> <label for="nvnom">Nouveau nom :</label> <input name="nvnom"type="text" id="nvnomcat"/> <label for="nvnomcat">Nouvelle description :</label> <input name="nvdescat"type="text" id="nvdescat"/> <input type="button" value="Renommer" id="renamecat"/> </div> <div id="psuputi"> <input type="button" value="Supprimer" id="suputi"/> </div> <div id="rename_uti"> <label for="nvnomuti">Nouveau nom d'utilisateur:</label> <input name="nvnomuti"type="text" id="nvnomuti"/> <label for="nvnomcat">Nouvelle description :</label> <input name="nvdescat"type="text" id="nvdescat"/> <input type="button" value="Renommer" id="renamecat"/> </div> <div id="afftou"> </div> <div id="captcha"> <p>Entrez le code pour valider la suppression</p> <input type="text" disabled="disabled" id="captchatext" size="5"/><br/> <input type="text" id="captchavalue" size="5"/><br /> <input type="button" value="valider" id="validcaptcha" /> </div> </div><!--END OFF APDIV5--> <div id="back"></div> <div id="popup" style="position: absolute; top: 82.5px; left: 479px; display: none;"> <div id="barrepopup" class="barre"><a class="close" id="closepopup">x</a></div> <h1>titre</h1> <div id="cont" style="background-color:#CCC; border:2px solid #666; width:420px; height:310px; text-align:center; padding-top:10px; position :absolute; left:4px; visibility: visible;"></div> </div> <div id="tooltip"> </div> </body> </html>
MIDO-MIDO
Messages postés
24
Date d'inscription
dimanche 27 avril 2008
Statut
Membre
Dernière intervention
15 octobre 2014
7 avril 2011 à 22:27
7 avril 2011 à 22:27
UP