Page 1 sur 1

Menu déroulant ne fonctionnant pas ds ma page php (includes)

Posté : 26 août 2005, 12:30
par Niveun
Bonjour,

Je ne sais pas si c'est vmt un pb lié au php, mais entouka, ça a l'air lié, vu que dans ma page index.php, ça ne marche pas, mais si je prends le lien à part, ça marche.

Mais soyons plus clair :

voic ma page (test)

http://chattamistes.free.fr/index.php

Aprés l'avoir fait avec des iframe, suite aux conseils de pls personnes, j'ai tout enlevé et tout fait avec des includes.
Le pb se situe pour mon sous menu (celui qui se trouve dans le cadre noir...)
en effet, sur la page index.php, mon menu ne marche pas. impossible de cliquer dessus.
Pourtant si je vais là :http://chattamistes.free.fr/menu.php, il se déroule à la perfection, et on peut cliquer dessus sans pb.

Je precise que cela ne marche pas seulement sous IE. ailleurs, ça va (même si le sous menu se retrouve décalé à gauche ><)

Est ce qu'il y a une erreur ds le code?
Il me semble avoir fait tout comme il fallait pourtant....:/

Debutant dans le php, j'ai egalement un autre petit soucis....J'ai du mal à faire un lien correct, à partir de ce sous menu pour que la page apellée figure ds le cadre noir. Pouvez vous me mettre sur la voix?

Puis en allant voir ce sujet : Probleme avec PSEUDO FRAMES et includes
, j'ai vu qu'il avait le même pb que moi....a savoir que ma page mis en accueil ne se recharge pas lorsque jaurais cliqué sur mes differents menu....
(en fait, ca revient au même que ma question juste au dessus :/)
Merci de votre aide :)
J'ai galeré dessus toute la nuit, et sans succés ..... :cry:

Posté : 28 août 2005, 20:24
par Niveun
J'ai du mal m'expliquer :cry:
(Oui, ce smiley, veut bien dire que je n'y arrive tjs pas...et pourtant, je teste :( )

Posté : 29 août 2005, 09:08
par Cyrano
Effectivement, il y a un problème, sous Firefox, le menu en question n'apparaît même pas...

On peut voir le code que tu utilises pour l'inclusion du fichier ?

-

Posté : 29 août 2005, 12:35
par Niveun
Oh, c'est vrai....? Le menu apparait pourtant sur Firefox chez moi.... :? Bizarre !!

Je donne ma page index, ma feuille de style, et ma page d'inclusion avec le menu, (cad menu.php)

index.php

<body>

<div class="frame"> 

<?php include ("auteur.htm"); ?>
<a href="index.php?page=home">

<br><br>

<?php 
if (!isset($_GET['page'])) $page= 'accueil'; else $page= $_GET['page']; 
 switch($page)
{
case 'menu1': include ('menu.php');break;
case 'menu2': include ('menumenu.php');break;
case 'home':include ('auteur.php');break;
case 'fin':include ('fin.txt');break;
} 
?>

</div>



style.css

Code : Tout sélectionner

.gauche { margin-left: 400px; margin-top: 10px; width: 10px; height: 200px; overflow: no;} .frame { margin-left: 400px; margin-bottom: 0px; height: 370px; width: 430; overflow: auto; }




menu.php (1er sous menu)
<style type="text/css">
<!-- 

body {
margin: 0;
padding: 0;
margin-top: 30;
color:black;
background-color:black;
background-image:chattamistes.free.fr/limbes_centre.jpg
font: 80% verdana, arial, sans-serif;
}
dl, dt, dd, ul, li {
margin: 0;
padding: 0;
list-style-type: none;
}
#menu {
position: absolute;
top: 20;
left: 0;
z-index:100;
width: 100%;
}
#menu dl {
float: left;
width: 6em;
margin: 0 1px;
}
#menu dt {
cursor: pointer;
text-align: center;
font-weight: 000000;
background: #000000;
border: 1px solid gray;
}
#menu dd {
border: 1px solid gray;
}
#menu li {
text-align: center;
background: #000000;
}
#menu li a, #menu dt a {
color: #000000;
text-decoration: none;
display: block;
height: 100%;
border: 0px none;
}
#menu li a:hover, #menu dt a:hover {
background: #7E0000;
}

#site {
position: absolute;
z-index: 1;
top : 70px;
left : 10px;
color: #000;
background-color: #7E0000;
padding: 5px;
border: 1px solid gray; 
}

a {text-decoration: none;
color: white;
color: #7E0000;
cursor: url(STAR TREK TNG CROSS.CUR);
}
-->
</style>

<script language="javascript">
<!--
function popupcentree(page,largeur,hauteur,options)
{
var top=(screen.height-hauteur)/2;
var left=(screen.width-largeur)/2;
window.open(page,"","top="+top+",left="+left+",width="+largeur+",height="+hauteur+","+options);
}
//-->
</script>

</head>

<body>




<div id="menu">


	<dl>
		<dt onmouseover="javascript:montre();"><a href="index.php" title="Retour à l'accueil">
        <font color="#FFFFFF">Home</font></a></dt>
	</dl>
	
	<dl>			
		<dt onmouseover="javascript:montre('smenu1');"><font color="#FFFFFF">Les Limbes</font></dt>
			<dd id="smenu1" onmouseover="javascript:montre('smenu1');" onmouseout="javascript:montre('');" onmouseout= "javascript:montre();">
				<ul>
					<li><a href="#"><font color="#FFFFFF">News</font></a></li>
					<li><a href="#"><font color="#FFFFFF"><b>A propos.</b></font></a></li>
					<li><a href="#"><font color="#FFFFFF">Liens</font></a></li>
					<li><a href="#"><font color="#FFFFFF"><b>Heaven</b></font></a></li>
					<li><a href="#"><font color="#FFFFFF">à voir</font></a></li>
					<li><a href="#"><font color="#FFFFFF">à voir</font></a></li>
				</ul>
			</dd>
	</dl>
	
	
	<dl>	
		<dt onmouseover="javascript:montre('smenu2');"><font color="#FFFFFF">Chattamistes</font></dt>
			<dd id="smenu2" onmouseover="javascript:montre('smenu2');" onmouseout="javascript:montre('');"onmouseout= "javascript:montre();" >
				<ul>
					<li><a href='javascript:popupcentree("fiches.html",700,500,"menubar=no,scrollbars=yes,statusbar=no")'><font color="#FFFFFF">Les Inculpés</font></a></li>
					<li><a href='javascript:popupcentree("chattamistes.htm",800,600,"menubar=no,scrollbars=yes,statusbar=no")'><font color="#FFFFFF"><b>La Rubrique</b></font></a></li>
					<li><a href="#"><font color="#FFFFFF">Photos avec MC</font></a></li>
					<li><a href="#"><font color="#FFFFFF"><b>Rencontres avec MC</b></font></a></li>
				</ul>
			</dd>
	</dl>
	
	<dl>	
		<dt onmouseover="javascript:montre('smenu3');"><font color="#FFFFFF">Bonus</font></dt>
			<dd id="smenu3" onmouseover="javascript:montre('smenu3');" onmouseout="javascript:montre('');"onmouseout= "javascript:montre();" >
				<ul>
					<li><a href="#"><font color="#FFFFFF">Goodies</font></a></li>
					<li><a href="#"><font color="#FFFFFF"><b>Interview</b></font></a></li>
					<li><a href="#"><font color="#FFFFFF">Les objets dérivés</font></a></li>
					<li><a href="#"><font color="#FFFFFF"><b>Presse</b></font></a></li>
					<li><a href="#"><font color="#FFFFFF">à voir</font></a></li>
				</ul>
			</dd>
	</dl>
</div>
</body>
</html>
Je vois pas ou c'est que ça coince, si jamais tu pourrais trouver, tu me sauverais la vie (et non, j'exagere pas :( )

Posté : 29 août 2005, 13:30
par Cyrano
Ce que je demandais, c'est la ligne d'inclusion de fichier, pas trois pages de code :evil:
En plus, tu pourrais utiliser le bouton [php] au lieu de [quote]

Posté : 29 août 2005, 14:16
par Niveun
Désolée.
J'ai préféré tout mettre, car je ne vois pas où l'erreur peut se situer, si c'est à partir de l'index, de la page menu.php, ou sur la feuille de style...
J'ai cru que c'etait mieux.... :oops:

Posté : 29 août 2005, 14:37
par Cyrano
Bon, dans le troisième fichier, j'ai au moins noté un truc ou deux:
vire les balises <font> pour mettre les liens en blanc et ajoute ça dans la partie CSS:

Code : Tout sélectionner

#menu li a { color: #fff; }
Ensuite, le JavaScript n'étant pas là, difficile de le voir fonctionner en local.

Pour ce qui est du premier fichier indiqué : est-ce que tous les fichiers sont à la racine à coté de ton fichier index ? ou dans un répertoire ? (Le menu en particulier)

Posté : 29 août 2005, 14:44
par Niveun
Pour la partie CSS, je fais ça de suite :) merci !


Oui, tous les fichiers sont à la racine, à coté de mon fichier index. Comme j'ai pris une adresse test pour faire tout ça, je n'ai encore rien mis en repertoire.

Posté : 29 août 2005, 14:50
par Cyrano
Je viens de regarder un peu la source générée sur ton site: c'est quoi ça ?
//...
<body>
<div class="frame"> 
<html>
<head>
<title>Accueil</title>
<style type="text/css" media="screen">@import "style.css";</style>
</head>
<body>
//...
Les incllusion n'autorisent pas pour autant du code html complètement invalide: on inclut pas une page complète dans une autre. Le principe des pseudo-frames, c'est qu'on construit une page complète à partir de plusieurs morceaux qui ensemble forment une page complète mais unique, on a pas plusieurs fois <html><head>et.... imbriqués.

Corrige déjà ça, c'est à mon avis le plus urgent.

Ensuite le menu n'apparaît pas du tout dans cette source, donc l'inclusion n'est pas faite du tout.

Posté : 29 août 2005, 15:01
par Niveun
Mhh...

En fait, sur ma page index, j'ai mis une page d'accueil (avec un texte d ebienvenue tout ça...) que je n'ai pas mis directement sur la page d'index, pour pas que ce texte se retrouve sur la page menu.php . Je sais pas trop si c'est la bonne solution, à vrai dire.
Je devrais peut etre inserer ma page d'accueil (auteur.htm) en la nommant juste auteur.txt...?
Car c'est a cause de ça, je pense, qu'il y a donc deux head, deux body...etc....

Sortant à peine des iframe, je pense que je confond encore les deux. Même si je sais que les pseudos frame n'ont à voir qu'avec les iframes, que le nom.

Pour ce qui est du menu, en fait, j'ai fait comme ça :
<div class="frame"> 

<?php include ("auteur.htm"); ?>
<a href="index.php?page=home">

<br><br>

<?php 
if (!isset($_GET['page'])) $page= 'accueil'; else $page= $_GET['page']; 
 switch($page)
{
case 'menu1': include ('menu.php');break;
case 'menu2': include ('menumenu.php');break;
case 'home':include ('auteur.php');break;
} 
?>

</div>
Et d'apres ce que tu me dis, j'ai pas l'air d'avoir pris le meilleur moyen....

Pour la page d'accueil, je ne dois pas donc pas l'inserer (includes) en tant que page html, si j'ai bien compris. En .txt, c'est possible....?!

merci =)

Posté : 29 août 2005, 15:05
par Cyrano
Dans ta page index, tu peux n'avoir que des includes: un fichier pourra n'être que l'en-tête avec <html> ... jusqu'<a <body>, le menu avec seulement le menu, pas de <html, ni de <body ni rien d'autre que le menu, le contenu, même chose et le pied de page avec </body></html>

Lors de la génération de la page, le code html produit sera le code d'une (et une seule) page html complète.

Posté : 29 août 2005, 15:31
par Niveun
Haa..ha.

Mh, donc le menu que j'ai inserer :
<div class="gauche">

<a href="index.php?page=menu1" onMouseOver="i492310.src='menu12.jpg'" onMouseOut="i492310.src='menu1.jpg'">
<IMG SRC="menu1.jpg" style="position:absolute; left:187; top:421" NAME="i492310" BORDER="0" alt="Menu I- la Communauté" width="80" height="15"></a>

ETc...


</div>
donc ceci n'est pas bon....J'aurais du mettre le menu sur une autre page et l'inserer avec une includes, non....?

edit: autant pour moi, j'avais mal compris le msg juste au dessus.

Posté : 29 août 2005, 16:54
par Niveun
le menu avec seulement le menu
Arf, mais là, se pose un pb, vu que j'ai un script dans <head>. Ma feuille de style aussi s'y trouve, et elle est exclusivement pour menu.php....
ds ce cas que puisje faire?!