28217 sujets

CSS et mise en forme, CSS3

Bonsoir,

Vous rigolez si vous voulez ... Je n'ai toujours pas compris comment charger une page PHP dans un CSS à partir d'un <a href...
C'est pas clair, je sais. Bon en fait, à partir de

<a href="Admin.inc.php">Administration</a>

J'aimerais que la page Admin.inc.php se charge dans #center, la page centrale en fait.

Si quelqu'un peut avoir la gentillesse de me dire comment faire, ce serait sympa.

Laurent
Modifié par laurent_31 (16 Nov 2005 - 18:49)
Salut à toi.

Je ne rigolerais pas car c'est que tu ne connais pas tout simplement.

En fait le principe de l'include en php et d'inserer du texte, ou un fichier dans une page php.

Alors tout simplement je t'explique meme si en recherchant sur la partie tutorial du site alsa tu trouverais ce qu'il te faut.

On ne peux pas insérer un fichier dans la CSS, car le fichier CSS sert à a dire a ta page html ou php tel élèment aura l'aspect visuel comme ca ou autre.

Par contre on peux insérer un fichier dans une page php voila la méthode.

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


Ca c'est le code à mettre la ou tu veux que le fichier ou texte soit afficher.

Apres dans le fichier que tu appelle tu met ce que tu veux. je vais técrire un deuxième post pour que tu comprenne vraiment bien avec un exemple concret.
Vi, en fait j'aimerais que quand je clique sur un lien, la nouvelle page s'ouvre dans le centre :


#center
{
	background-color: #CCFF99;
	position: absolute;
	top 	: 110px;
	left 	: 195px;
	height	: 99%;
	width	: 99%;
}


Le lien étant sur la gauche : c'est la partie menu qui ne bouge jamais.

Merci de ta réponse Super_baloo8 Smiley smile
Voila l'exemple concret.

Je veux inserer un fichier htm (contenant uniquement un menu).

Voila le code de mon menu qui est dans le fichier "menu.htm":

<p><a href="page1.php">Accueil</a></p>
<p><a href="page2.php">Menu 1</a></p>
<p><a href="page3.php">Menu 2</a></p>
<p><a href="page4.php">Menu 3</a></p>


Maintenant que tu a ton menu de pret tu peux l'inclure dans ta page php. Voila le code d'une page simple avec l'include du menu (insertion du fichier "menu.htm" qui contient mon menu) :

<html>
<head>
<link rel="stylesheet" type="text/css" href="normal.css" title="normal">
<link rel="SHORTCUT ICON" type="images/x-icon" href="http://www.bts-cpi.info/favicon.ico">
<title>Mon menu en include</title>
</head>
<body>
<div id="menu">
<?
include("menu.htm");
?>
</div>
<div id="centre_de_ma_page">
Ici je peut ecrire le contenu de ma page ou autre chose c'est toi qui vois</div>
</body>
</html> 


Voila tu viens de réaliser ton include, j'espere que ca t'aura aider. @++
Ok je viens de voir ta réponse, je vais répondre a ta demande vu que je l'ai fait pour un site que je construit (voir site)

Tu vois ce site fonctionne comme tu veux, un seul fichier qui contient tout le contour, et ensuite il charge chaque "contenu" dans le centre.

Je ne pense vraiment pas que c'est la meilleure solution mais bon, je n'en ai pas cherché d'autre pour l'instant. Je te met directement le code source et je t'explique tout au fur et a mesure.

<? [#blue]/*?>J'ai crée une fonction qui dis que si j'ai ma variable qui est

 = "à quelque chose" alors j'affiche le fichier "intel"<?php */[/#]
if($in == "") {
include("info/accueil.php");}
[#blue]/*?>Pour ici si ma variable $in est null, alors j'affiche la page acceuil.php 

qui se trouve dans le dossier info. Ceci est utile pour quand on arrive sur 

le site.<?php */
/*?>Ce que j'ai fais la est pour que chaque page que j'affiche donne un 

nom à la page et au body id (pour les lien qui deviendront ainsi actif)<?php */[/#]
if($in == "accueil") {
include("info/accueil.php");}
if($in == "pieces") {
include("info/pieces.php");}
if($in == "cours") {
include("info/cours.php");}
if($in == "contacts") {
include("info/contacts.php");}
if($in == "devis") {
include("info/devis.php");}
if($in == "plan_du_site") {
include("info/plan_du_site.php");}
if($in == "liens") {
include("info/liens.php");}
if($in == "a_propos") {
include("info/a_propos.php");}
?>
[#blue]/*?>Fin de la fonction include pour mettre un titre a la page et son body id.<?php[/#]
 */<!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" />
<title>[#blue]/*?>Je viens imprimer la variable $title du fichier que je viens d'inclure plus haut<?php */[/#]
<?
 print("$title");
?>
[#blue]/*?>Fin de l'impression du titre<?php */[/#]
</title>
<link rel="stylesheet" href="style/verte.css" />
</head>

<body id="
[#blue]/*?>J'imprimme le nom du body id pour les lien actif<?php */[/#]
<?
print("$id"); 
?>
[#blue]/*?>Fin de l'impression<?php */[/#]
">
<div id="ensemble">
<div id="header">
<p><img src="header.gif" width="742" height="107" alt="Quercy Production, Compagnie Théatrale" /></p>
</div>
[#brown]/*?>Voici mes deux menu, tu peux n'en faire qu'un il suffit 

juste que tu comprenne le principe. Chaque lien contiens un surplus de 

lien : "?in=quelque_chose" Cette méthode s'appelle un appel 

de variable. L'include que je fais juste apres dans mon "conteneur" à 

besoin de cette variable $in pour savoir quel fichier mettre. Donc quand 

on clique sur le lien, je donne un nom a cette variable qui me diras tu met tel fichiers<?php */[/#]
<div id="menu_gauche">
<p><a href="?in=accueil">Accueil</a></p>
<p><a href="?in=pieces">Pièces</a></p>
<p><a href="?in=cours">Cours</a></p>
<p><a href="?in=contacts">Contacts</a></p>
<p><a href="?in=devis">Devis</a></p>
</div>
<div id="menu_droite">
<p><a href="?in=plan_du_site">Plan du site</a></p>
<p><a href="?in=liens">Liens</a></p>
<p><a href="?in=a_propos">A propos</a></p>
</div>
[#brown]/*?>Fin de mes menus<?php */[/#]
<div id="contenu">
<? 
[#red]/*?>Début du code de l'include des pages dans mon "conteneur".

Comme tu la vu plus au, chaque lien donne un nom a la variable $in. 

Ici si la variable $in = nulle alors j'affiche ma page d'accuel.php (comme plus haut).

Si la variable s'appelle "pieces" alors j'insere le fichier correspondant, 

donc ici le fichier "pieces.php"<?php */[/#]
if($in == "") {
include("accueil.php");}
if($in == "accueil") {
include("accueil.php");}
if($in == "pieces") {
include("pieces.php");}
if($in == "cours") {
include("cours.php");}
if($in == "contacts") {
include("contacts.php");}
if($in == "devis") {
include("devis.php");}
if($in == "plan_du_site") {
include("plan_du_site.php");}
if($in == "liens") {
include("liens.php");}
if($in == "a_propos") {
include("a_propos.php");}
?>
[#red]/*?>Fin du code de l'include du fichier du conteneur<?php */[/#]
</div>
<div id="footer">
© 2005 Tous droits réservés, Quercy Productions</div>
</div>
</body>
</html>


Maintenant passons au fichier à inclure pour obtenir le nom de la page et du body id. Comme tu la vu plus haut dans le code, j'utilise les variable $title pour donner un nom a la page et la variable $id pour donner un nom au body id.
Voila le code source de la page accueil.php contenant ces informations. (ce fichier se trouve dans un dossier info, ce n'est pas le même que celui qui sera inclue dans le conteneur) :

<?
$title = "Bienvenue chez Quercy Productions, compagnie théatrale";
$id ="accueil";
?>


Tu vois pour cette page la je donne un nom à mes variables $title et $id, donc quand ma page se chargera et qu'elle appelera ce fichier, tout mes endroits ou je demande l'impression de ces variables prendra les valeurs rentrer ici.

Apres voila le code source du fichier que j'inclu dans mon conteneur :

<?
<p>Salut à tous voila mon include</p>
?>


Tu peux mettre ce que tu veux dans cette include puisque c'est le texte ou autre qui sera placé dans mon conteneur.

Voila bonne chance a toi et j'espere que j'aurais été le plus clair possible
Modifié par Super_baloo8 (16 Nov 2005 - 00:43)
Hello,
Si je peux me permettre quelques remarques:
- pourquoi ne pas utiliser un "case" au lieu de la suite de "if"
- pourquoi ne pas placer tes menus dans des balises de listes <ul>...</ul> plutôt que d'utiliser des <div et <p> non appropriées ici
- quel est l'intérêt de donner un id à ton <body> ?
Bonne continuation Smiley cligne
Bonjour tout le monde Smiley smile

Merci Super_baloo8, avec ta première réponse je ne pouvais appeler qu'un page, maintenant je peux en appeler plusieurs, le pied quoi Smiley smile

J'aimerais juste vois ton fichier css si c'est possible :

J'arrive à charger les pages mais elles poussent mon header vers le bas Smiley decu

L'URL de mes expériences : http://extros.dyndns.org

Merci d'avance

Laurent
Modifié par laurent_31 (16 Nov 2005 - 11:01)
@zanzibar Je commence par la fin en remontant.
Donner une id a ton body permet de mettre des liens actif (je viens de faire les changements necessaire dans ma page).

Je n'utilise pas les balise de liste, car d'un je ne veux pas de point ou autre décoration devant (enfin du moins pas pour l'instant) et de plus ce n'est pas une liste, mais un menu.

Case est un systeme php avec la fonction array non ? je ne connais pas encore assez bien cette méthode pour l'appliquer, mais je regarderais les tuto de certains site pour apprendre a le faire, merci de ton aide Smiley lol

@Laurent_31 vos souhait sont des ordres Smiley biggol voila la css (tu sais que tu pouvais l'avoir sans me demander, puisque il suffit de regarder dans le code source de la page et de repérer son chemin et de le taper) :

body#accueil a#accueilnav,
body#a_propos a#a_proposnav,
body#contacts a#contactsnav,
body#liens a#liensnav,
body#plan_du_site a#plan_du_sitenav,
body#pieces a#piecesnav,
body#devis a#devisnav,
body#cours a#coursnav {
text-decoration : underline;
color:#CC3300;
}
a:link {
color : #0099FF; 
text-decoration : none; 
}
a:link, a:visited, a:hover {
color : #0099FF; 
text-decoration : none; 
}
a:hover {
text-decoration : underline;
color: #CC0000;
} 
html, body {
width: 100%;
height: 100%;
}
body {
font-family: Georgia, "Times New Roman", Times, serif;
font-size: 100%;
margin: 0;
padding: 0;
}
#header {
height: 110px;
background-color: #CAFFCA;
}
#ensemble {
height:100%;
width:100%;
position: absolute;
background-color:#CAFFCA;
}
#contenu {
background-color:#CAFFCA;
margin-left: 110px;
margin-right: 155px;
font-size: 100%;
color: #003399;
}
#menu_gauche {
float:left;
left:0;
width: 100px;
margin: 5px 5px 5px 5px;
}
#menu_droite {
float:right;
right:0;
width: 140px;
margin: 5px 5px 5px 5px;
}
#footer {
height: 30px;
background-color: #CAFFCA;
clear:both;
font-size: 80%;
text-align: center;
color: #003399;
}
#titre_de_page {
font-weight:bold;
background-color: #CAFFCA;
font-size: 150%;
text-align: left;
color: #003399;
}
p {
margin: 0 0 10px 0;
text-align: justify;
}


Voili voulou
Cool merci Smiley smile

Si je peux t'aider à mon tour, pour retirer les points devant les listes, tu peux taper ça :


ul 
{
       list-style-type: none;
}


Merci à toi
Juste pour information Super_baloo8 :

Plutot que ton code PHP de 30 lignes, tu peux faire :


if(!empty($in)) {
     $file = $in.'.php';
     if(file_exists($file)) include($file);
     else echo 'fichier introuvable';
} else include('accueil.php');


Juste une suggestion ...
@Evasion MERCI Smiley biggrin Smiley biggrin Ca me raccourci bien tout. Nikel

@Laurent_31, merci pour l'aide sur les ul, mais comment faire si à un moment j'ai besoin de ces puces ? merci pour ta réponse Smiley cligne Smiley smile
Modifié par Super_baloo8 (17 Nov 2005 - 20:50)
Lol, je ne suis pas assez calé pour te répondre.
Je crois que tu peux faire des sous-styles comme ça :


ul .avecpuce
{
       list-style-type: circle;
}


Sous toutes réserves. Faudrait demander à un pro Smiley smile

EHOOOOOOOOOOH, ya un pro dans le coin ?

lol

Laurent