operation mathématique sur une variable (script pop up)

operation mathématique sur une variable (script pop up) - PHP - Programmation

Marsh Posté le 06-03-2007 à 18:13:49    

Bonjour,
je suis en train de programmer un site internet avec Spip et j'utilise un code Javascript qui m'ouvre une fenêtre pop up pour afficher des images en grande dimension (diaporama).  
 
Voici le script :
 

Code :
  1. <HEAD>
  2. <script language="JavaScript">
  3. <!--
  4. function MM_openBrWindow(theURL,winName,features) { //v2.0
  5.   window.open(theURL,winName,features);
  6. }
  7. //-->
  8. </script>
  9. </HEAD>


 

Code :
  1. <BOUCLE_PHOTOS(DOCUMENTS){mode=DOCUMENT}{id_article=1}{doublons}>
  2. <img
  3. src="http://localhost/spip/[(#LOGO_DOCUMENT||extraire_attribut{src})]" width="150"
  4. height="#LARGEUR/150"
  5. onClick="MM_openBrWindow('#URL_DOCUMENT','43443','width=#LARGEUR,height=#HAUTEUR')">
  6. </BOUCLE_PHOTOS>


 
La variable #LARGEUR est une balise spip qui renvoie automatiquement la largeur de l'image. Elle est bien prise en compte par le script. Mon problème est que je n'arrive pas à la diviser par 150 (height="#LARGEUR/150" ). Avez-vous la solution à mon problème, je n'arrive pas à trouver la bonne syntaxe ?
 
Merci et à bientôt  :hello:  
Sébastien


Message édité par sebjaffa le 06-03-2007 à 20:45:36
Reply

Marsh Posté le 06-03-2007 à 18:13:49   

Reply

Marsh Posté le 06-03-2007 à 18:18:14    

Code :
  1. onClick="MM_openBrWindow(parseInt(#URL_DOCUMENT/150),'43443','width=#LARGEUR,height=#HAUTEUR')">

Reply

Marsh Posté le 06-03-2007 à 18:40:03    

Salut, merci pour ta réponse. J'ai essayé ça :
 

Code :
  1. <img
  2. src="http://localhost/spip/[(#LOGO_DOCUMENT||extraire_attribut{src})]" width="150"
  3. height="parseInt(#LARGEUR/150)"
  4. onClick="MM_openBrWindow('#URL_DOCUMENT','43443','width=#LARGEUR,height=#HAUTEUR')">


 
Mais ça ne fonctionne pas, la hauteur n'est pas calculée.

Reply

Marsh Posté le 06-03-2007 à 18:48:59    

aaaaah j'avais pas vu que tu voulais le mettre à cette endroit la, je croyais que c'était dans le openWindow et donc du js... [:oups]
La tu peux pas te servir de js , il faut que tu te serves des options de calcul de spip, et comme je connais pas spip :o

Reply

Marsh Posté le 06-03-2007 à 20:29:20    

Oki, merci !
 
J'essaie de contourner le problème avec du php, voici ma nouvelle boucle :  

Code :
  1. <BOUCLE_PHOTOS(DOCUMENTS){mode=DOCUMENT}{id_article=1}{doublons}>
  2. <?php
  3. $l=(150*#HAUTEUR)/#LARGEUR;
  4. echo "<imgsrc="http://localhost/spip/[(#LOGO_DOCUMENT||extraire_attribut{src})]" width="150" height="$l"
  5. onClick="MM_openBrWindow('#URL_DOCUMENT','43443','width=#LARGEUR,height=#HAUTEUR')">";
  6. $l=0;
  7. ?>
  8. </BOUCLE_PHOTOS>


 
Elle crée une variable $l, qui est en fait la hauteur de l'image recalculée. Cependant problème, easyphp me retourne un message d'erreur : Parse error: parse error, expecting `','' or `';'' in c:\program files\easyphp1-8\www\spip\ecrire\public.php(145) : eval()'d code on line 26

 
C'est apparement une erreur de syntaxe mais je vois pas où est le problème dans mon code...  :??:
 
Ps : j'ai déplacé le sujet dans la rubrique php ;)


Message édité par sebjaffa le 06-03-2007 à 20:46:30
Reply

Marsh Posté le 06-03-2007 à 21:53:09    

Reply

Marsh Posté le 07-03-2007 à 08:47:34    

sielfried a écrit :

echo "cherche "un peu"";


 [:grinking]


Message édité par anapajari le 07-03-2007 à 08:47:47
Reply

Marsh Posté le 07-03-2007 à 11:12:11    

Salut,  
 
en fait je fais un mauvais "mélange" entre les guillements de echo et le script php.  
Php n'arrive pas à déterminer la fin de la ligne correctement je pense.
 
Sachant que mon code s'écrit avec cette syntaxe (j'ai rajouté deux \ pour la balise imgsrc ) :
 

Code :
  1. echo"<imgsrc=\"http://localhost/spip/[(#LOGO_DOCUMENT||extraire_attribut{src})]\"
  2. width="150" height="$l"
  3. onClick="MM_openBrWindow('#URL_DOCUMENT','43443','width=#LARGEUR,height=#HAUTEUR')">";


 
comment modifier le code javascript pour que ses guillements ne soient pas pris en compte par php ?
 
Merci  :)  
Sébastien


Message édité par sebjaffa le 07-03-2007 à 11:12:40
Reply

Marsh Posté le 10-03-2007 à 15:46:49    

voici la réponse :
 

Code :
  1. echo '<img src="http://localhost/spip/[(#LOGO_DOCUMENT||extraire_attribut{src})]" width="150" height="'.$l.'" onclick="MM_openBrWindow(\'#URL_DOCUMENT\',\'43443\',\'width=#LARGEUR,height=#HAUTEUR\')" />';

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed