8792 sujets

Développement web côté serveur, CMS

Bonjour,

j'essaye d'inclure un php dans un autre. J'ai ce fichier, qui est un fichier modèle :


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<?php include('http://'.$_SERVER['HTTP_HOST'].'/styles/menu.php'); ?>
<?php include("include/menu.php"); ?>
<title><?php echo htmlentities($titre)?></title>

<?php echo '<base href="http://'.$_SERVER['HTTP_HOST'].'/" />';?>

<link href="styles/menu.css" rel="stylesheet" type="text/css" />
<link href="styles/contenu.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" language="javascript" src="scripts/menu.js"></script>
	
</head>

<body onload="start();">
	<div id="curseur" class="infobulle"></div>
	<?php echo('<?php include("include/contenu.php"); ?>'); ?>
	<?php include('http://'.$_SERVER['HTTP_HOST'].'/scripts/buildMenu.php'); ?>
</body>	
</html>


et pleins de fichiers qui l'utilsent :


<?php include('http://'.$_SERVER['HTTP_HOST'].'/scripts/modele.php'); ?>


Seulement il semblerait que les urls soient relatives au modèle et non au fichier qui l'utilise. J'ai semi-résolu le probleme en utilisant:


<?php echo('<?php include("include/contenu.php"); ?>'); ?>


au lieu de :


<?php include("include/contenu.php"); ?>


mais rien à faire pour :


<?php include("include/menu.php"); ?>


La solution qui semi-marche ne m'a pas l'air très propre non plus... Comment faire ? merci
Hello,
La page contenant les includes doit être en php.

Et le bon code pour inclure une page est bien :

<?php include("page.php"); ?>

Mets le bon path directement en dur.