Help : Mise En Page - HTML/CSS - Programmation
Marsh Posté le 21-10-2004 à 21:54:33
http://www.alsacreations.com/articles
cela devrait t'aider
Marsh Posté le 21-10-2004 à 23:27:32
Encore une question : Voici mon debut de page :
http://perso.wanadoo.fr/rtptt/
Mais comment je fais pour dire a la cible du lien URL de se charger dans la zone centrale ou il y a ecris Tirlididi ?
C'est quoi le code , car là la mise en page est avec des balise DIV ...
Merci
Faut faire appel au php comme avant sur mon exemple cité au dessus ?
Marsh Posté le 22-10-2004 à 07:20:29
oui il te faut faire appel à du php et gérer des pseudo frames avec des includes
Marsh Posté le 22-10-2004 à 10:19:06
www.phpdebutant.org ils ont des tutoriaux plutot bien fait (enfin je trouve) dont un sur les pseudos frames (par contre il les font avec tableau et pas des div, mais tu aura le principe d'include)
Marsh Posté le 22-10-2004 à 11:21:39
J'ai compris le principe d'include, mais ca bug encore a un petit endroit :
Warning: Failed opening 'php' for inclusion (include_path='.usr/local/lib/php') in /export/home/enssci/s021595/public_html/index.php on line 15
J'ai fait ceci comme page d'index : index.php
<html>
<head>
<style type="text/css" media="screen">@import "style.css";</style>
</head>
<body>
<div class="entete"></div>
<div class="contenu">
<div class="menu">
<a href="index.php?page=accueil">Accueil</a></br>
<a href="index.php?page=meca">Meca</a></br>
<a href="index.php?page=vente">Vente</a></br>
</div>
<div class="centre">
<?php
include($_GET['page'].'.php');
?>
</div>
</div>
<div class="pied"></div>
</body>
</html>
J'ai fait trois pages simple : accueil.php , meca.php , vente.php que j'ai mis au meme endroit que index.php
Et je vois pas trop ce qui deconne, surement un probleme de lien , car qd je fais dans div centre : include('meca.php'); ca marche.
C'est avec le GET que ca deconne, juste ca, et apres c bon je peux faire ce que je veux ...
Merci de votre patience
Marsh Posté le 22-10-2004 à 11:27:40
le problème c'est qu'au démarrage de ta page $page n'a pas de valeur donc il essaie de charger .php qui n'existe pas
Marsh Posté le 22-10-2004 à 11:36:28
<?php
if (isset($_GET["page"])) $page = $_GET["page"];
else $page = accueil;
include($_GET['page'].'.php');
?>
J'ai fait ca, marche pas non plu , tu peux pas plutot me mettre le bout de code bon stp ?
PS : J'ai corrigé ma faute sur "acceuil" en accueil partout y compris le nom du fichier, donc c bon de ce coté là.
Marsh Posté le 22-10-2004 à 11:44:57
tu mets ça comme code php
<?php
if (isset($_GET["page"])) $page = $_GET["page"];
else $page = "accueil";
include($page.'.php');
?>
il te faut les "" pour accueil sinon il cherche une variable et il te faut faire un iclude de $page puisque tu l'a initialisé
Marsh Posté le 23-10-2004 à 10:24:10
webmidipyrenees a écrit : tu mets ça comme code php |
Pas joli à regarder ce truc...
IL faut qu'il apprenne à être un peu plus rigoureux. Même si les {} ne sont pas obligatoires, ça rend le code bcp plus lisible.
Code :
|
Marsh Posté le 23-10-2004 à 10:34:46
c'est clair mais je lui ai juste donné les fonctions qui fonctionnent à lui de mettre en page après
Marsh Posté le 23-10-2004 à 10:52:42
on peu aussi l'ecrire comme ca
Code :
|
Marsh Posté le 23-10-2004 à 18:08:18
Oui merci , voici l'url actuelle :
http://membres.lycos.fr/ahulane/dr350/index.php
Bon j'apprend doucement en recopiant du code prefait et en essayant de le modifier a ma guise.
J'ai centré comme j'ai pu le menu avec
margin-left: 30%; margin-right: 30%;
Mais par contre je rencontre un gros pb de mise en page sous Mozzila quand la salete de pub de lycos se met a droite, mais sous IE , ca reste correct.
Mon CSS est surement mal fait a certain endroit, j'ai encore un peu de mal avec les position float et tout , si qqun peut me conseiller ?
Ma feuille de style CSS :
http://membres.lycos.fr/ahulane/dr350/style.css
Marsh Posté le 23-10-2004 à 18:35:16
déjà pas de html, body dans ton css juste body suffit
1 seul overflow pour le body suffit car sinon tu crées 3 ascenceur(1 pour html, 1 pour body, 1 pour div centre)
1 seul ouverture de balise html head et body (tu vires ceux juste après <div class="centre"> et ceux à la fin de la page.
sans la pub lycos à droite ça marche
Marsh Posté le 23-10-2004 à 18:55:41
Merci, j'ai supprimé le html dans le css.
Pour les pages qui s'affichent dans le div class centre j'ai aussi virer les balises head hml et body comme tu as dit (si g bien compris)
Mais pour les overflow, si je vire celui du div class centre, ca fait plu comme je veu ca bug : Certes il y a qu'un seul ascenseur, mais apres quand on descend le menu n'est plu visible, or j'aimerais qu'il reste visible, donc j'ai laissé l'overflow dans le centre et ca fait comme je veu, seulement ca fait 2 ascenceurs.
Il y a pas moyen de virer l'autre ? Si non, pas grave c deja bien comme ca. Car meme en virant l'overflow du body , il reste qd meme a l'ecran. Donc dans le doute je le laisse qd meme.
Marsh Posté le 23-10-2004 à 20:34:34
non tu peux virer l'overflow du body et avec firefox seul la partie centrale aura un ascenceur et avec ie6.0 tout le document aura l'ascenceur.
2 ascenceurs ça fait pas terrible et on ne sait pas lequel il faut manipuler
Marsh Posté le 21-10-2004 à 21:43:45
Voila, je suis un webmaster novice depuis qq année je fais des ptits trucs pas forcement au top.
Au Debut j'optais pour la mise en pages par Frame en HTML normale , mais j'ai vu que c'etait pas cool.
Alors je suis passé a la mise en page par tableau a l'aide de PHP comme ceci :
"<html>
<body>
<table width="100%">
<tr bgcolor="lightblue"><td colspan="3" align="center">Placez ici, l'entête de votre site</td></tr>
<tr><td bgcolor="yellow">Placez ici, votre menu gauche<br />
<a href="?page=0">Accueil</a><br />
<a href="?page=1">Page 1</a><br />
<a href="?page=2">Page 2</a><br />
</td>
<td width="100%" align="center">
<?php
// Ici, c'est la zone centrale
// Récupération du paramètre GET avec PHP>=4.1
// (avec valeur par défaut=0) .
if (isset($_GET["page"])) $page = $_GET["page"];
else $page = 0;
// Contenu dépendant de la valeur du paramètre
switch ($page) {
case 1 : echo "Vous avez sélectionné la page 1"; break;
case 2 : echo "Vous avez sélectionné la page 2"; break;
default : echo "Bienvenue sur la page d'accueil"; break;
}
?>
</td>
<td bgcolor="yellow">Placez ici, votre menu droit</td>
</tr>
<tr bgcolor="lightblue">
<td colspan="3" align="center">Placez ici, le pied de page de votre site</td>
</tr>
</table>
</body>
</html>"
Mais apres avoir eu qq pb d'afficahge sous IE, on m'a dit, les tableaux c pas bien, arrete tout ca, et passe au XHTML et au CSS , c'est les nouvelles normes.
Ok , alors je viens de me mettre doucement au XHTML et au CSS, mais je vois pas comment faire une mise en page genre : Un partie menu, et une partie "pages" sans passer par les tableau et l'ancienne version avec le php.
C'est quoi le mieux ? On utilise les balises div ??
Qqun peut il me donner un lien sur un tutoriel du genre queje recherche (je trouve pas), ou alors me faire vite fait la mise en page en express pour me montrer rapidement ?
Merci d'avance
Un internaute qui ne demande qu'a apprendre et se perfectionner ...