Récupérer variables de javascript en php (Ajax)

Récupérer variables de javascript en php (Ajax) - PHP - Programmation

Marsh Posté le 12-05-2009 à 09:44:49    

Bonjour à tous,
 
Je suis en train de développer mon site internet, j'ai actuellement un petit problème.
 
J'aimerais récupérer un variable javascript en php, j'ai lu sur des forums que c'était impossible puisque php s'exécute sur le serveur et le javascript côté client. Mais il paraît qu'il existe une méthode utilisant l'Ajax et une qui ne l'utiliserait pas.
 
Voici mon code :
 

Code :
  1. <?php
  2. $random = '?'.rand();
  3. $pseudo = $_SESSION['pseudo'];
  4. setcookie('num_img', '1', (time() + 3600));
  5. $img='1';
  6. echo "<img src='images/$pseudo/Image 1.jpg$random' alt='' height=470 />";
  7. $x = 1;
  8. while( (file_exists("images/$pseudo/Image $x.jpg" )) && $x<7 )
  9. {
  10.  $x++;
  11. }
  12. $_SESSION['x'] = $x-1;
  13. include("changer_image.php" );
  14. ?>
  15. <form method="post" action ="" name="">
  16. <p>
  17. <table style="width:625px;border:1px solid Gray;border-radius: 40px 40px;-moz-border-radius: 50px;">
  18. <tr>
  19.  <td style="text-align:left;width:7%;"><div id="tgau"><?php if ($img>1) echo '<input type="image" src="images/boutons/Bouton-precedent2.png" name="prec" onclick="changer_image(\'moins\')" />';?></div></td>
  20.  <td style="width:32%; text-align:center;" ><div id="gau"><?php if ($img>1) echo "<img src='images/$pseudo/Image ".($img-1).".jpg$random' alt='' height=120 />"; ?></div></td>
  21.  <td style="width:22%; text-align:center;"> <div id="midd"><?php echo "<img src='images/$pseudo/Image ".$img.".jpg$random' alt='' height=100 />"; ?></div></td>
  22.  <td style="width:32%; text-align:center;"><div id="dro"><?php if ($img<$x) echo "<img src='images/$pseudo/Image ".($img+1).".jpg$random' alt='' height=120 />"; ?></div> <input type="hidden" name="img" id="img" value="<?php echo $img; ?>" /></td>
  23.  <td style="text-align:right;width:7%;"><div id="tdro"><?php if ($img<$x) echo '<input type="image" src="images/boutons/Bouton-suivant2.png" name="next" onclick="changer_image(\'plus\')" />';?></div></td>
  24. </tr>
  25. </table>
  26. </p>
  27. </form>
  28. <!-- Lien pour ouvrir la pop-up avec comme paramètre le numéro de la photo pour insérer
  29. le commentaire avec la bonne photo -->
  30. <div style='text-align:center;'>
  31. <p style='font-size:15px;'>
  32.  <a href="javascript:OuvrirFenetre('popup_commetaire.php?Id_num_Article=<?php echo $numero_photo; ?>&photo=1','popup','width=500,height=400')">
  33.  Ajouter un commentaire
  34.  </a>
  35. </p>
  36. </div>


 
 
Ensuite le code Javascript de : include("changer_image.php" );
 

Code :
  1. <?php
  2. $random = '?'.rand();
  3. ?>
  4. <script LANGUAGE="JavaScript">
  5. // Variable qui stocke le nombre d'image de l'utilisateur
  6. varX="<?php echo $_SESSION['x'];?>";
  7. // Variable qui sert à ne pas conserver les mêmes images dû aux cookies.
  8. varRandom="<?php echo $random;?>";
  9. // Variable qui sert à savoir à quel image on en est
  10. varT=1;
  11. function getCookie(sName) {
  12.         var cookContent = document.cookie, cookEnd, i, j;
  13.         var sName = sName + "=";
  14.         for(var i=0,c=cookContent.length;i<c;i++) {
  15.                 j = i + sName.length;
  16.                 if(cookContent.substring(i, j) == sName) {
  17.                         cookEnd = cookContent.indexOf(";", j);
  18.                         if(cookEnd == -1) {
  19.                                 cookEnd = cookContent.length;
  20.                         }
  21.                         return decodeURIComponent(cookContent.substring(j, cookEnd));
  22.                 }
  23.         }     
  24.         return null;
  25. }
  26. function changer_image(signe)
  27. {
  28. comp=getCookie("num_img" );
  29. if (signe=='moins')
  30. {
  31.  varT--;
  32.  // Condition qui cache la prévisualisation précédente si on est à la photo 1.
  33.  if (parseInt(comp-1)>1)
  34.   document.getElementById('tgau').innerHTML='<input type="image" src="images/boutons/Bouton-precedent2.png" name="prec" onclick="changer_image(\'moins\')" />';
  35.  else
  36.   document.getElementById('tgau').innerHTML='';
  37.  // Variable pour remédier aux apostrophes.
  38.  varP="<?php echo $_SESSION['pseudo'];?>";
  39.  document.getElementById('image').innerHTML="<img src='images/"+varP+"/Image "+(parseInt(comp)-1)+".jpg"+varRandom+"' alt='' height=470 />";
  40.  document.getElementById('gau').innerHTML="<img src='images/"+varP+"/Image "+(parseInt(comp)-2)+".jpg"+varRandom+"' alt='' height=120 />";
  41.  document.getElementById('midd').innerHTML="<img src='images/"+varP+"/Image "+(parseInt(comp)-1)+".jpg"+varRandom+"' alt='' height=100 />";
  42.  document.getElementById('dro').innerHTML="<img src='images/"+varP+"/Image "+(parseInt(comp))+".jpg"+varRandom+"' alt='' height=120 />";
  43.  if (parseInt(comp-1)<varX)
  44.   document.getElementById('tdro').innerHTML='<input type="image" src="images/boutons/Bouton-suivant2.png" name="next" onclick="changer_image(\'plus\')" />';
  45.  else
  46.   document.getElementById('tdro').innerHTML='';
  47.  document.cookie = 'num_img' +"=" + (parseInt(comp)-1)+ ";" ;
  48. }
  49. else
  50. {
  51.  varT++;
  52.  if (parseInt(comp+1)>1)
  53.   document.getElementById('tgau').innerHTML='<input type="image" src="images/boutons/Bouton-precedent2.png" name="prec" onclick="changer_image(\'moins\')" />';
  54.  else
  55.   document.getElementById('tgau').innerHTML='';
  56.  varP="<?php echo $_SESSION['pseudo'];?>";
  57.  document.getElementById('image').innerHTML="<img src='images/"+varP+"/Image "+(parseInt(comp)+1)+".jpg"+varRandom+"' alt='' height=470 />";
  58.  document.getElementById('gau').innerHTML="<img src='images/"+varP+"/Image "+(parseInt(comp))+".jpg"+varRandom+"' alt='' height=120 />";
  59.  document.getElementById('midd').innerHTML="<img src='images/"+varP+"/Image "+(parseInt(comp)+1)+".jpg"+varRandom+"' alt='' height=100 />";
  60.  document.getElementById('dro').innerHTML="<img src='images/"+varP+"/Image "+(parseInt(comp)+2)+".jpg"+varRandom+"' alt='' height=120 />";
  61.  if ((parseInt(comp)+1)<varX)
  62.   document.getElementById('tdro').innerHTML='<input type="image" src="images/boutons/Bouton-suivant2.png" name="next" onclick="changer_image(\'plus\')" />';
  63.  else
  64.   document.getElementById('tdro').innerHTML='';
  65.  document.cookie = 'num_img' +"=" + (parseInt(comp)+1)+ ";" ;
  66. }
  67. return varT;
  68. }
  69. function init()
  70. {
  71. document.cookie = 'num_img' +"=1;" ;
  72. }
  73. </script>


 
 
Pour mieux voir ce que fait mon code, sur ma page j'ai ça :  
http://i61.servimg.com/u/f61/11/31/25/01/racup-10.jpg
 
Ainsi j'aimerais récupérer la variable "varT" dans la fonction changer_image dans le code javascript
Pour m'en servir pour ouvrir la pop-up Ajouter Commentaire, pour poster le commentaire avec le numéro de la photo dans la base de données.
 
Pour ensuite afficher les commentaires de chaque image (en Ajax je suppose).
 
Je me suis dit qu'en Ajax ça serait possible, sauf que j'y connais pas grand chose.
Si quelqu'un à une solution à me proposer en m'expliquant comme ça marche (ou non) ça serait parfait :-)
 
Merci d'avance

Reply

Marsh Posté le 12-05-2009 à 09:44:49   

Reply

Sujets relatifs:

Leave a Replay

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