Bonjour,
Je reprends du code dans lequel le PHP, le HTML, le CSS et le Javascript sont mélangés.
Par exemple, extraits de index2.php :
	
	| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 
 | <?php
session_start();
 
include("connexion_bdd.php");
include("compteur_connexions.php");
/* du code PHP */
 
// Fonction pour supprimer les accents :
function wd_remove_accents($str, $charset='utf-8')
{
    /* du code PHP */
}
 
/* du code PHP */
 
function redimage($img_src,$dst_w,$dst_h) 
{
    /* du code PHP */
}
 
/* du code PHP */
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title><?=$le_titre;?></title>
	<meta name="description" content="<?=$la_description;?>"/>
	<meta name="keywords" content="<?=$les_keywords;?>"/>
	<meta http-equiv="Content-Language" content="<?=$la_langue?>" />
	<link rel="icon" type="image/x-icon" href="img/favicon.ico" />
	<script type="text/javascript" src="js/jquery-1.4.3.min.js"></script>
  <!-- autres fichiers Javascript inclus -->
	<script type="text/javascript" >
		 function afficheMessage(contenuHTML){
                        /* du code Javascript */
                }
 
                /* autres fonctions Javascript */
 
               function afficherPopupLangues(){
			var posX = 20;
			var posY = 40; 
			$("#popLangues").show().css({ 'z-index': '10', 'right':posX+'px', 'top':posY+'px'});
		}
 
                /* autres fonctions Javascript */
 
	</script>
</head>
<body style="background:#FFFFFF; margin:0px; padding:0px; font-family:Arial, Verdana, Helvetica; color:white;">
	<div id="barre_top" style="height:36px; margin:auto; background-image:url('images/fond_barre_top.png'); background-repeat:repeat-x;">
 
<!-- du code HTML -->
 
<a href="javascript:afficherPopupLangues();" class="menuTOP">
  <?=$trad_language?>
</a>
 
<!-- etc. --> | 
 Dans ce code existant, l'appel à la fonction Javascript afficherPopupLangues() fonctionne.
Voulant organiser un peu mieux le code :
- j'ai transféré le code Javascript dans un fichier ew.js ;
- j'ai isolé l'entête HTML, qui resservira plusieurs fois, dans un fichier entete.phtml ;
- j'ai isolé le début du <body> dans un fichier bandeau_haut.phtml pour les mêmes raisons et l'appel à la fonction afficherPopupLangues() se retrouve ainsi dans bandeau_haut.phtml.
Dans entete.phtml, j'ai bien entendu ajouté cette ligne :
	
	<script type="text/javascript" src="js/ew.js"></script>
 En remplacement de index2.php, j'ai un fichier formé ainsi :
	
	| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 
 | <?php
 
include_once("includes/inc_session_control.php"); // Contrôle de la session utilisateur
include_once("includes/inc_cookie_control.php"); // Contrôle du cookie
include_once("ewtrad.php");
include_once("includes/inc_common_functions.php");
include("compteur_connexions.php");
 
$msg_type = "";
$msg_a_afficher = "";
 
// Identification du membre à partir du formulaire d'identification
if($_POST["ident"])
{
 
  // du code PHP
 
}
 
// Entête de page HTML
require 'entete.phtml';
?>
<body>
<?php 
require 'bandeau_haut.phtml';
?>
</body>
<?php 
// Bas de page HTML
require 'bas_page.phtml';
?> | 
 Et cette fois, lorsque je clique sur l'option de menu qui appelle la fonction Javascript afficherPopupLangues(), rien ne se passe, si ce n'est cette erreur dans Firebug :
	
		
			
			
				afficherPopupLangues is not defined
			
		
 
	 
 Quelqu'un saurait me dire pourquoi ?
						
					
Partager