PHP dans du javascript ne s'éxécute que la première fois... [Résolu/Fermé]

Signaler
Messages postés
123
Date d'inscription
mercredi 10 mars 2010
Statut
Membre
Dernière intervention
12 novembre 2015
-
Messages postés
123
Date d'inscription
mercredi 10 mars 2010
Statut
Membre
Dernière intervention
12 novembre 2015
-
Bonjour, depuis peu je programme un site web. K'utilise l'api google pour lire des vidéo youtube. Voici le bout de code en question:
 <div class="col-xs-12 video"  id="ytplayer">
    <script>
     
       var tag = document.createElement('script');
       tag.src = "[https://www.youtube.com/player_api]";
       var firstScriptTag = document.getElementsByTagName('script')[0];
       firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
       
       var player;
       function onYouTubePlayerAPIReady() 
       {    
      player = new YT.Player('ytplayer', 
      {
        height: '700',
        width: '640',
        videoId: video_id.VIDEO_ID,
      });
       }
       
       function Horloge() //A chaque fois le le temps à été écoulé, on passe par cette fonction qui va chercher un nouveau id de video et qui la fait jouer.
       {
      <?php $video_id = $repository->get_random_video($video_id);?>
      var video_id = <?php echo json_encode($video_id);?>;
      player.clearVideo();
      player.loadVideoById(video_id.VIDEO_ID, 5, "large")
      var dt=new Date();
      window.status=dt.getHours()+":"+dt.getMinutes()+":"+dt.getSeconds(); //calacul du temps du video....
      timer = window.setTimeout('Horloge()', 10000); 
       }
       
       var timer = window.setTimeout('Horloge()', 10000); 
    
    </script>
   </div>


--------------------------------------------------------------

Le problème est que je fait un appel au 10 secondes à la fonction horloge, qui elle contient du code php. Le tout s'exécute bien la première fois, mais en revanche les fois suivantes le php ne s'exécute pas bien car la video_id ne change jamais. J'ai effectuer plusieurs test avec des alert et des print_r et echo var_dump, mais rien ne m'a aidé. J'aimerais savoir ce qui cause ce problème et comment le résoudre. Merci


EDIT : Ajout des balises de code.
Merci d'y penser les prochaines fois...

1 réponse


Normal, du PHP c'est du langage serveur, donc exécuté que par le serveur, et le JS du langage client donc gérer par le navigateur, mais les deux ne peuvent pas être exécuter sur le serveur de l'autre.

Mais pour les lier il existe l'AJAX par exemple.
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 65492 internautes nous ont dit merci ce mois-ci

Messages postés
123
Date d'inscription
mercredi 10 mars 2010
Statut
Membre
Dernière intervention
12 novembre 2015
1
Pourquoi sa fonctionne quand je passe pour la première fois dans la fonction alors?
Utilisateur anonyme
Car la page est traité par le serveur avant d'être envoyé. Le PHP exécuté retourne de lHTML.
Messages postés
123
Date d'inscription
mercredi 10 mars 2010
Statut
Membre
Dernière intervention
12 novembre 2015
1
Merci, j'ai réussi, j'ai fait du ajax et tout va super bien.