Anthotill
Messages postés127Date d'inscriptionmardi 19 août 2003StatutMembreDernière intervention13 mars 2010
-
18 oct. 2005 à 13:33
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 2010
-
19 oct. 2005 à 17:45
Bonjour à tous !
J'ai un code simple pour agrandir une image dans une popup qui se redimensionne a la taille de cette image (j'ai posé la question dans le forum javascript mais ils me disent de venir ici) :
<SCRIPT LANGUAGE="JavaScript">
<!--
function PopupImage(img) {
titre="Agrandissement";
w=open("",'image','width=400,height=400,toolbar=no,scrollbars=no,resizable=no');
w.document.write("<HTML><HEAD><TITLE>"+titre+"</TITLE></HEAD>");
w.document.write("<SCRIPT language=javascript>function checksize() { if (document.images[0].complete) { window.resizeTo(document.images[0].width+10,document.images[0].height+30); window.focus();} else { setTimeout('checksize()',250) } }</"+"SCRIPT>");
w.document.write("");
w.document.write("\");
w.document.write(\"+img+"' border=0 alt='Mon image'>");
w.document.write("
");
w.document.write("</HTML>");
w.document.close();
}
//-->
</SCRIPT>
Et mon liens est le suivant :
Mon probleme c'est que lorsque je clique ce liens pour agrandir, ca ne fonctionne pas il y a une erreur a cause du PHP ... Si je met le chemin de l'image en dur ca fonctionne.
J_G
Messages postés1406Date d'inscriptionmercredi 17 août 2005StatutMembreDernière intervention28 août 200710 18 oct. 2005 à 20:49
Voilà qui est mieux... merci pour l'erreur.
Bon, on voit que la ligne qui bug est bonne (%27) sauf que pour
l'utiliser, javascript interprète le %27 et le retranscrit en ' sans
demander notre avis... d'où le bug colone 38 (l'apostrophe étant colone
37)
Essaye addslashes($data['type']); au lieu de urlencode($data['type']);
Tu devrais avoir écrit PopupImage('produits/imprimante/jet d\'encre/bij_2300.jpg');
(PS : mets un point virgule à la fin, même si dernière commande)
Anthotill
Messages postés127Date d'inscriptionmardi 19 août 2003StatutMembreDernière intervention13 mars 2010 18 oct. 2005 à 13:59
Merci de répondre :)
Non l'erreur n'est pas NOTICE : undefine constante type assumed 'type' .
malalam : Merci de ton aide, mais ce ne fonctionne toujours pas dans la barre de status il y a marqué "erreur sur la page" dès que je clique le liens agrandir.
enfait, dans ['type'] c'est une catégorie qui dans le liens sert de dossier par exemple :
Le liens devrait etre a la fin : produits/imprimante/jet d'encre/image.jpg 'type' étant jet d'encre et 'nom' étant le nom de limage.
Antho
Vous n’avez pas trouvé la réponse que vous recherchez ?
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 18 oct. 2005 à 14:15
Et en plus, jet d'encre comporte une apostrophe.
Si tu regardes ton source html, tu verras tout de suite un problème
dans l'appel de ta fonction js : l'apostrophe de jet d'encre interfère
avec les apostrophes délimitant les paramètres à passer à ta fonction
js.
Anthotill
Messages postés127Date d'inscriptionmardi 19 août 2003StatutMembreDernière intervention13 mars 2010 18 oct. 2005 à 18:47
Bon le rawurlencode() fonctionne et passe le + en %20 mais voila, encore une erreur pourtant l'url est bonne ...
Le répertoire jet d'encre existe bien et meme saisie en dur l'url provoque une erreur ......
[javascript:PopupImage('produits/imprimante/<? echo rawurlencode($data['type']) ?>/<? echo $data['nom'] ?>.jpg') Agrandir] c'est le liens que jutilise je vais essayer echo '[javascript:PopupImage(\'produits/imprimante/JE DOIS METTRE QUOI au lieu de ',$data['type'],'/',$data['nom'],'\'); agrandir]';
* propose ton script à la validation (via l'url ou tu fais
copier-coller la source de la page HTML générée par ton script PHP dans
la zone prévue à cet effet)
* Tu auras certainement un paquet d'erreur (comme tout le monde à la
première soumission d'une page...) Trouves celle(s) qui se rapporte(nt)
au lien du bug
Anthotill
Messages postés127Date d'inscriptionmardi 19 août 2003StatutMembreDernière intervention13 mars 2010 18 oct. 2005 à 20:32
Erreur : missing ) after argument list
Fichier Source : javascript:PopupImage('produits/imprimante/jet%20d%27encre/bij_2300.jpg')
Ligne : 1, Colonne : 38
Code Source : PopupImage('produits/imprimante/jet d'encre/bij_2300.jpg')
C'est l'erreur que me donne Firefox car le w3 validator ne trouve pas d'erreur a ces lignes :s tan pis si on ne trouve pas c'est dommage mais bon :s j'aurais bien aimer ce script :s
J_G
Messages postés1406Date d'inscriptionmercredi 17 août 2005StatutMembreDernière intervention28 août 200710 19 oct. 2005 à 16:37
Salut malalam,
Tu savais toi qu'en passant une chaine de caractère "encodée-url" en
paramètre d'une fonction javascript, l'encodage était automatiquement
interprété ?
(Finalement, la chaîne n'est pas encodée, c'est son écriture dans la page HTML qui l'est !)
Cc : Le ouaib, c'est vraiment de la programmation galère. Un méli-mélo
de langages hétérogènes, sans parler de l'incohérances totale entre les
différentes plateformes interprétant ces langages (condition
structurelle du Web), une multitudes de couches logiciels et
protocolaires, des tones de normes à spécifier et à respecter, des
contraintes régionales (langues, heures, normes, claviers, ...), un
graphisme beaucoup plus recherché que pour toutes les autres appli, un
énorme goulot d'étranglement appelé "Internet", une sécurisation des
données quasi nulle à cause du mêm Internet, un réseau de "testeur"
extrèmement exigents (autre nom pour "pirates")... Et tout ça pour
recevoir l'ingratitude des codeurs d'applications "en dure" (C++, ASM,
TP, ...).
Bref, la création de Webgiciel n'est pas un jeu pour autistes de l'informatique.
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 19 oct. 2005 à 17:45
Tu savais toi qu'en passant une chaine de caractère "encodée-url" en
paramètre d'une fonction javascript, l'encodage était automatiquement
interprété ?
Bah nan, c'est pour ça que je suis bien content d'avoir mangé mes carbo à la place ;-)
lol on savais tous que c'était un probleme, encore fallait il pouvoir
le résoudre :p ca ma pas empeché de manger ma pizza MDR