fredrick Posté 19 Mai 2006 Posté 19 Mai 2006 Bonjour, J'ai un site avec un menu vertical à gauche et un cadre au mileu de la page dans lequel s'ouvre toute une série de pages. Disons que le menu comporte trois titres (industrie, société, produits). Dans la page video.html qui s'ouvre grâce à l'include dans la page principale index.php, il y a un lecteur vidéo qui lit la vidéo appellée lorsqu'on clique sur l'un des trois titres. Tout ceci fonctionne bien. Voici mes codes : Voici la fonction qui me permet d'ouvrir une vidéo différente lorsqu'on clique sur l'un des trois titres. <script language="javascript"> function playIt(filename) { document.embed.filename = filename; }</script> ensuite je met le lecteur vidéo <div class="video"> <embed type="application/x-mplayer2" name="embed" src="player" autostart="1" loop="0" showcontrols="1" height="340" width="380"> </embed></div> et voici le menu de gauche : <div class="gauche"><dl id="menu"> <dt onmouseover="this.style.background='#24cbff';" onmouseout="this.style.background='#b0f9ff'"> <a href="#" onclick="playIt('industrie.wmv')">INDUSTRIE</a> </dt> <dt onmouseover="this.style.background='#24cbff';" onmouseout="this.style.background='#b0f9ff'"> <a href="#" onclick="playIt('wr_fre.mpg ')">SOCIETE</a> </dt> <dt onmouseover="this.style.background='#24cbff';" onmouseout="this.style.background='#b0f9ff'"> <a href="#" onclick="playIt('produits.mpg')">PRODUITS</a> </dt></dl></div> ------------ Voilà donc tout ceci fonctionne. Le menu se trouve dans la page index.php et le reste (fonction+lecteur) dans la page video.html qui est includée dans la page index.php et qui apparaît donc comme page d'accueil, page principale. j'ai donc mis dans la page index ceci : <div class="principale"> <?php if (!isset($_GET['page'])) $page= 'accueil'; else $page= $_GET['page']; switch($page){ case 'accueil' : include('http://127.0.0.1/formation/bom/video.html');break; case 'contact': include ('http://127.0.0.1/formation/bom/contact.html');break; } ?> </div> ------------- Le problème est que lorsqu'on clique sur le lien contact qui ouvre une nouvelle page dans la page index grâce à l'include, un texte apparaît et le menu de gauche est toujours visible mais lorsque je veux revoir une vidéo en cliquant sur l'un des trois titres du menu la page video.html n'apparaît pas ???? et donc la vidéo n'est pas lue. Les vidéos ne sont lues que lorsque je suis sur la page vidéo.html Donc j'aimerais trouver le moyen d'ouvrir la page vidéo lorsqu'on clique sur l'un des titres et en même temps faire démarrer la vidéo qui correspond alors qu'on se trouve sur la page contact. J'espère que j'ai été assez clair et que vous me suivez toujours lol Je suis preneur à toute vos idées, j'ai déjà essayé pleins de choses mais je n'arrive pas à régler ce problème. Merci à vous tous, Passez une bonne journée, Fred
smile Posté 19 Mai 2006 Posté 19 Mai 2006 Si ton architecture c'est une page vidéo pour lire les vidéos et une page contact, il est clair quand tu te trouves sur la page de contact tu peux pas jouer tes vidéos, enlever le menu vidéos quand t'es sur la page contact peut etre ...
fredrick Posté 19 Mai 2006 Auteur Posté 19 Mai 2006 Merci smile mais je veux absolument garder le menu peu importe la page qui s'ouvre. Je sais que tout est possible en informatique et qu'il doit y avoir moyen de faire deux actions l'une à la suite de l'autre lors d'un click. Je sais que pour capter l'événement du clicque, on utilise onclick="" j'ai besoin de savoir comment on met deux actions différentes dans le onclick. La première pour ouvrir la page vidéo.html grâce à : index.php?page=accueil et la deuxième action serait de lire la vidéo en question grâce à : playIt('industrie.wmv') Le problème c'est qu'il ne s'agit pas du même language car le premier code n'est pas du javascript et je ne sais pas comment on fait. Donc ceci ne fonctionne pas : <a href="#" onclick="index.php?page=accueil;playIt('industrie.wmv')"> et ceci non plus d'ailleurs : <a href="index.php?page=accueil" onclick="playIt('industrie.wmv')"> J'espère que c'est plus compréhensible, si quelqu'un pouvait m'aider ça serait sympa, Merci
smile Posté 19 Mai 2006 Posté 19 Mai 2006 (modifié) IL suffit de mettre le code javascript qui joue tes videos dans la page video.html et tu recuperes le nom de ta video via une variable php, donc le menu serait de type : <a href="index.php?page=accueil&video=industrie.wmv">video industrie</a> comme ca tu recuperes le nom video que tu puisses demarrer ta vidéo c'est plus onclick mais un onload ensuite Modifié 19 Mai 2006 par smile
fredrick Posté 19 Mai 2006 Auteur Posté 19 Mai 2006 Donc si j'ai bien compris, je met <a href="index.php?page=accueil&video=industrie.wmv">video industrie</a> pour mes titres du menu et je récupère la variable video grâce à <? $video=$_GET['video']; ?> que je place tout en haut de la page video.html ???? C'est bien ça? Ensuite je dois utiliser cette variable afin de faire jouer la vidéo en question lors du chargement de la page vidéo.html. Pour faire cela je dois utiliser le onload="", est-ce que ce code est correct ? onload="playit('$video')" Mais je le place où ce onload? Dans quelle balise ? Merci à toi Smile
smile Posté 19 Mai 2006 Posté 19 Mai 2006 (modifié) oui mais dans ta page index.php qui je comprends bien demarre une video depuis un include video.html, donc mettre dans body de ta page index : <body onload="playit('<? echo $_GET['video']; ?>')"> // ton include video.html </body> Modifié 19 Mai 2006 par smile
fredrick Posté 19 Mai 2006 Auteur Posté 19 Mai 2006 ok un grand merci pour ton aide. Je vais essayé ça.
smile Posté 19 Mai 2006 Posté 19 Mai 2006 Vérifie tout de même si t'es sur l'include page de contact de ne pas mettre le onload sinon tu auras une erreur javascript. Onload doit etre placé quand c'est l'include video qu'est appelé.
fredrick Posté 19 Mai 2006 Auteur Posté 19 Mai 2006 Ca ne marche pas. Je comprend pas pourtant l'idée est bonne ... Dans ma page index j'ai mis <body onload="playit('$_GET[\'vide\']')"> puis plus bas il y a l'include appelant un autre fichier ('video.html') où il y a la fonction en javascript de tout à l'heure qui n'a pas changé et le lecteur vidéo. J'ai bien sûr retiré toutes les balises non nécessaire comme le <body> ou le <html> Ensuite plus bas dans la page index.php, on trouve le menu avec le <a href> que tu m'as conseillé et bien sûr en y mettant le bon emplacement du fichier vidéo. Mais ça ne marche pas ???? Il me met dans la barre de statut "erreur sur la page" genre de message d'erreur en javascript
smile Posté 19 Mai 2006 Posté 19 Mai 2006 (modifié) parce que c'est <? echo $_GET['video']; ?> et pas de \' d'abord, php va interpreter le code depuis le serveur puis ensuite le navigateur va lire ta page html et le javascript. Modifié 19 Mai 2006 par smile
fredrick Posté 19 Mai 2006 Auteur Posté 19 Mai 2006 Tu vas dire que je suis ch.. mais ça ne fonctionne toujours pas, il me met des message d'erreur de javascript. J'ai même essayé d'insérer le <body machin> dans la page video.html mais rien y fait. Bizarre !
smile Posté 19 Mai 2006 Posté 19 Mai 2006 (modifié) t'as combien de body dans ta page index ?? il faut pas que t'es de head,body dans ta video.html uniquement le code insertion de ta video, puisque c'est un include d'une page qui a dejà les balises Modifié 19 Mai 2006 par smile
fredrick Posté 19 Mai 2006 Auteur Posté 19 Mai 2006 je sais, il n'y en a pas. Il n'y a qu'un head et un body et ils sont tous les deux en haut de ma page index.php
fredrick Posté 19 Mai 2006 Auteur Posté 19 Mai 2006 C'est quand même bien ça qu'il faut mettre dans la page index ? <body onload="playIt('<? echo $_GET['video']; ?>')">
smile Posté 19 Mai 2006 Posté 19 Mai 2006 oui et playit est une fonction que tu dois avoir pour faire jouer ta vidéo, t'as une url à montrer ?
smile Posté 19 Mai 2006 Posté 19 Mai 2006 essaie comme cela : <body onload="playIt('<? echo $_GET['video']; ?>');"> avec le point virgule pour la fin de fonction, ca fonctionne ?
fredrick Posté 19 Mai 2006 Auteur Posté 19 Mai 2006 Non, j'ai esayé avec le ; et cela ne marche pas non plus. Pour l'url je ne serai pas t'en donner une car je travaille encore en local pour le moment. tous mes fichiers sont dans le même répertoire donc il n'y a pas de soucis à ce niveau-là. En fait tout fonctionne sauf quand je suis sur contact.html. Donc mes fichiers sont bien reconnu par le lectuer qui lui fonctionne à merveille. Donc ma fonction est bonne et l'appelle à cette fonction est bonne. Le seul truc c'est d'arriver à faire deux action en un seul clique. Je clique sur un des titres et la fenêtre s'ouvre dans l'include et ensuite la vidéo démarre. Je ne comprend pas, ça ne doit pourtant pas être bien sorcier. Qu'est-ce qui nous échappe ???
smile Posté 19 Mai 2006 Posté 19 Mai 2006 Qu'est-ce qui nous échappe ??? Moi rien Je t'es donné la marche à suivre, ca doit fonctionner maintenant y'a une coquille quelque part mais je n'ai pas les fichiers sous les yeux ou l'adresse pour voir ce qui cloche mais ca doit marcher
fredrick Posté 19 Mai 2006 Auteur Posté 19 Mai 2006 Ah bon! Chez toi ça marche avec tout ce qui est écrit dans ce forum ? Aille, je vais encore une fois tout bien vérifier mais je vois pas là. Merci en tout cas pour tout, c'est très sympa.
fredrick Posté 19 Mai 2006 Auteur Posté 19 Mai 2006 Crois-tu que cela pourrait venir de cela ? <a href="index.php?page=accueil&video='D:/Assets/Video/wr_fre.mpg'">
smile Posté 19 Mai 2006 Posté 19 Mai 2006 J'ai pas testé, je t'es indiqué le chemin En regardant ton embed pour la vidéo, il y'a plus simple sans passer par la fonction javascript pour demarrer la video (fonctionnera pour ie et firefox) : <object id="Player" width="220" height="204"classid="CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6"><param name="TransparentAtStart" value="false"><param name="ShowControls" value="true"><param name="autoStart" value="true"><param name="url" value="<? echo $_GET['video']; ?>"><embed width="220" height="204" autostart=1 src="<? echo $_GET['video']; ?>" name="Player"></object> comme ca tu peux enlever le javascript
fredrick Posté 19 Mai 2006 Auteur Posté 19 Mai 2006 En fait il me met "identificateur attendu" à la ligne 91 qui est celle-ci : <body onload="playIt('<? echo $_GET['video']; ?>');">
fredrick Posté 19 Mai 2006 Auteur Posté 19 Mai 2006 Il sait lire qu'elle extension de fichier vidéo???
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant