Forum |  HardWare.fr | News | Articles | PC | Prix | S'identifier | S'inscrire | Shop Recherche
2745 connectés 

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Fonction include pour un fichier html

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Fonction include pour un fichier html

n°2224739
slr56
Tout problème a sa solution.
Posté le 10-04-2014 à 16:20:00  profilanswer
 

Bonjour,

 

Dans un fichier index.php, j'ai une fonction include comme suit :

 

Code :
  1. <div id="menu">
  2.      <?php include('site/menu.php'); ?>
  3.         </div>
 

Elle interprète correctement la page menu.php qui contient des liens php de type :

 
Code :
  1. <a href="index.php?page=Tarifs">Tarifs</a>
 

Dans cette page "index.php", je voulais ajouter une code javascript mais évidemment, le javascript doit être exécuté par le client et non pas par le serveur php.

 

Alors, je voulais savoir si je peux remplacer l'include  

 
Code :
  1. <?php include('site/menu.php'); ?>

par

 
Code :
  1. <?php include('site/menu.html'); ?>
 

J'ai testé et a priori, ça à l'air d'être bon, sauf que mon code javascript dans la page menu.html n'est pas exécuté. Il permet de faire un menu avec des images qui "glissent". (Le js fonctionne bien sans passer par la fonction include) .

 

Une idée ?

 

Cdt,

 

slr56.


Message édité par slr56 le 10-04-2014 à 16:21:27

---------------
Configurations type du moment : https://forum.hardware.fr/hfr/Hardw [...] 1331_1.htm  https://www.jouannetphotographe.com
mood
Publicité
Posté le 10-04-2014 à 16:20:00  profilanswer
 

n°2224745
rufo
Pas me confondre avec Lycos!
Posté le 10-04-2014 à 16:58:57  profilanswer
 

Le fait de passer de l'extension php à html ne va rien changer, si ce n'est que le php dans le fichier html ne sera plus interprété (sauf si apache a été paramétrer pour interpréter le php de fichiers html).
 
Pour info, il est parfaitement possible de mettre du javascript dans des fichiers php; il sera simplement exécuté côté client, lors du rendu de la page web. Le php générant dynamiquement le code html/css/JS, il faut donc bien veiller à ce que l'ordre de génération de ces différents langages se fasse correctement.
 
Je recommande de faire du javascript non intrusif : le PHP fait de simple insertions de fichiers JS dans le <head> via des balises <script>. Dans la balise <body>, sur l'événement onload, appeler une fonction qui se charge d'appeler les fonctions de lancement des divers JS mis dans le <head>.
 
Dans mon appli Astres (cf ma signature -> fichier /Astres/GUI/GraphicInterface.php), c'est ce que j'ai fait pour appeler des plugins en javascript qui modifient à la volée le contenu de certaines pages web ;)


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Cantine Calandreta : http://sourceforge.net/projects/canteen-calandreta
n°2224798
slr56
Tout problème a sa solution.
Posté le 11-04-2014 à 09:53:58  profilanswer
 

Merci rufo pour les informations.
Je vais regarder ce que tu as dans ta signature. :)


---------------
Configurations type du moment : https://forum.hardware.fr/hfr/Hardw [...] 1331_1.htm  https://www.jouannetphotographe.com
n°2224823
slr56
Tout problème a sa solution.
Posté le 11-04-2014 à 11:20:16  profilanswer
 

rufo a écrit :

Le fait de passer de l'extension php à html ne va rien changer, si ce n'est que le php dans le fichier html ne sera plus interprété (sauf si apache a été paramétrer pour interpréter le php de fichiers html).

 

Pour info, il est parfaitement possible de mettre du javascript dans des fichiers php; il sera simplement exécuté côté client, lors du rendu de la page web. Le php générant dynamiquement le code html/css/JS, il faut donc bien veiller à ce que l'ordre de génération de ces différents langages se fasse correctement.

 

Je recommande de faire du javascript non intrusif : le PHP fait de simple insertions de fichiers JS dans le <head> via des balises <script>. Dans la balise <body>, sur l'événement onload, appeler une fonction qui se charge d'appeler les fonctions de lancement des divers JS mis dans le <head>.

 

Dans mon appli Astres (cf ma signature -> fichier /Astres/GUI/GraphicInterface.php), c'est ce que j'ai fait pour appeler des plugins en javascript qui modifient à la volée le contenu de certaines pages web ;)

 


J'essaye d'utiliser la fonction body onload mais pour le moment, j'ai toujours le même résultat, à savoir que le javascript ne s'exécute pas.

 

Voici le code de la page menu.php si quelqu'un peut m'aider car là je sèche.

 

Cdt,

 

slr56.

 
Code :
  1. <html>
  2. <head>
  3.  <link rel="shortcut icon" href="logo.ico" type="image/x-icon"/>
  4.         <link rel="stylesheet" href="css/style.css" type="text/css" media="screen"/>
  5.  <link href="css/jimgMenu.css" rel="stylesheet" type="text/css" />
  6.  <script type="text/javascript" src="scripts/js/jquery.js"></script>
  7.  <script type="text/javascript" src="scripts/js/jquery-easing-1.3.pack.js"></script>
  8.  <script type="text/javascript" src="scripts/js/jquery-easing-compatibility.1.2.pack.js"></script>
  9.  <script type="text/javascript">
  10.    function mon_script() {
  11.      // find the elements to be eased and hook the hover event
  12.      $('div.jimgMenu ul li a').hover(function() {
  13.     // if the element is currently being animated (to a easeOut)...
  14.     if ($(this).is(':animated')) {
  15.       $(this).stop().animate({width: "310px"}, {duration: 450, easing:"easeOutQuad"});
  16.     } else {
  17.       // ease in quickly
  18.       $(this).stop().animate({width: "310px"}, {duration: 400, easing:"easeOutQuad"});
  19.     }
  20.      }, function () {
  21.     // on hovering out, ease the element out
  22.     if ($(this).is(':animated')) {
  23.       $(this).stop().animate({width: "78px"}, {duration: 400, easing:"easeInOutQuad"})
  24.     } else {
  25.       // ease out slowly
  26.       $(this).stop('animated:').animate({width: "78px"}, {duration: 450, easing:"easeInOutQuad"});
  27.     }
  28.      });
  29.    };
  30.  </script>
  31. </head>
  32. <body onLoad="mon_script()" >
  33. <center><div class="jimgMenu">
  34.   <h1 class="title">Menu</h1>
  35.   <ul id="sdt_menu" class="sdt_menu">
  36.    <li>
  37.     <a href="index.php?page=accueil" >
  38.      <img src="images/Vignettes/V1.jpg" alt="" class="arrondie"/>
  39.      <span class="sdt_active"></span>
  40.      <span class="sdt_wrap">
  41.      <span class="sdt_link">Home</span>
  42.      </span>
  43.     </a>
  44.    </li>
  45.   </ul>
  46. </div>
  47. </center>
  48. </body>
  49. </html>


Message édité par slr56 le 11-04-2014 à 14:52:34

---------------
Configurations type du moment : https://forum.hardware.fr/hfr/Hardw [...] 1331_1.htm  https://www.jouannetphotographe.com
n°2224825
rufo
Pas me confondre avec Lycos!
Posté le 11-04-2014 à 11:26:57  profilanswer
 

En même temps, dans ton html, elle est où ta div.jimgMenu :??:
 
Par ailleurs, <center> est déprécié depuis très longtemps :/


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Cantine Calandreta : http://sourceforge.net/projects/canteen-calandreta
n°2224830
slr56
Tout problème a sa solution.
Posté le 11-04-2014 à 11:45:24  profilanswer
 

Effectivement, je m'étais trompé de nom pour la div. J'ai corrigé son nom dans le body.
 
Malheureusement, le problème n'est pas résolu. :(
 
Pour le <center>, je vais le remplacer par du css. :)


---------------
Configurations type du moment : https://forum.hardware.fr/hfr/Hardw [...] 1331_1.htm  https://www.jouannetphotographe.com
n°2224843
rufo
Pas me confondre avec Lycos!
Posté le 11-04-2014 à 12:55:28  profilanswer
 

C'est bizarre, tu testes si ton div est animé mais dans les 2 cas tu fais un stop :/ Or, nul part, tu lances l'animation a priori. Ce code, c'est toi qui l'a fait où tu l'as pompé qq part sans le comprendre :??:


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Cantine Calandreta : http://sourceforge.net/projects/canteen-calandreta
n°2224849
slr56
Tout problème a sa solution.
Posté le 11-04-2014 à 13:46:17  profilanswer
 

rufo a écrit :

C'est bizarre, tu testes si ton div est animé mais dans les 2 cas tu fais un stop :/ Or, nul part, tu lances l'animation a priori. Ce code, c'est toi qui l'a fait où tu l'as pompé qq part sans le comprendre :??:

 


Ce code je l'ai récupéré sur ce site http://tympanus.net/codrops/2010/0 [...] -box-menu/     (zip à télécharger)

 

J'essaye de le comprendre et j'ai réussi à l'adapter à la version précédente de mon site.

 

En html, css et php, je me débrouille. Par contre en javascript, je suis débutant, donc j'apprends sur les scripts existants.

 


Ce que je veux et que j'arrive à faire fonctionner indépendamment du php, c'est ce qu'il y a dans la démo de la page ci-dessus. Dès que je l'imbrique avec la fonction onload, ça ne charge pas.


Message édité par slr56 le 11-04-2014 à 13:56:56

---------------
Configurations type du moment : https://forum.hardware.fr/hfr/Hardw [...] 1331_1.htm  https://www.jouannetphotographe.com
n°2224852
rufo
Pas me confondre avec Lycos!
Posté le 11-04-2014 à 14:00:03  profilanswer
 

<div class="jingMenu"> et en JS tu appelles $('div.jimgMenu ul li a')
 
(un n dans le class html à la place d'un m)


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Cantine Calandreta : http://sourceforge.net/projects/canteen-calandreta
n°2224863
slr56
Tout problème a sa solution.
Posté le 11-04-2014 à 14:52:06  profilanswer
 

Effectivement, il y avait cette faute d'orthographe mais ça ne résout pas le problème.
 
Cependant, j'ai toujours le même problème.
 
J'ai vraiment l'impression que la page php refuse d'exécuter le code js bien qu'il y ait le body onload.


---------------
Configurations type du moment : https://forum.hardware.fr/hfr/Hardw [...] 1331_1.htm  https://www.jouannetphotographe.com
mood
Publicité
Posté le 11-04-2014 à 14:52:06  profilanswer
 

n°2224867
rufo
Pas me confondre avec Lycos!
Posté le 11-04-2014 à 15:05:59  profilanswer
 

c'est pas php qui exécute le js, mais le navigateur :o


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Cantine Calandreta : http://sourceforge.net/projects/canteen-calandreta
n°2224869
slr56
Tout problème a sa solution.
Posté le 11-04-2014 à 15:15:24  profilanswer
 

rufo a écrit :

c'est pas php qui exécute le js, mais le navigateur :o


 
Oui, le php est exécuté côté serveur et le js côté client.  


---------------
Configurations type du moment : https://forum.hardware.fr/hfr/Hardw [...] 1331_1.htm  https://www.jouannetphotographe.com

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Fonction include pour un fichier html

 

Sujets relatifs
Couper des champs particuliers du fichier texteLancer des script .vbs depuis une page HTML
parser un fichier json avec jqueryimportation de valeur de cellule dans un texte sous excel
Script shell pour comparaison de 2 fichier et récupération du résultatProblème argument fonction slope (vba)
Probleme sur la fonction get pour un Httprequestappel fonction à un menuitem d'une toolbar gtk2
comment extraire des données spécifique du fichier logPasser "un" argument "deux-en-un" a une fonction
Plus de sujets relatifs à : Fonction include pour un fichier html


Copyright © 1997-2018 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR