8797 sujets

Développement web côté serveur, CMS

Bonjour à tous,

je ne suis pas certain de poster ma question au bon endroit et dans ce cas-là, je vous prie de bien vouloir m'en excuser.

La question :

Jusqu'à présent, je ne réalisais que des sites en XHTML et CSS (où plus exactement je m'y essayais) et j'arrivais tant que bien que mal à obtenir le résultat que je voulais (en m'aidant des tutos qui vont bien sur Alsacreations, en jetant des coups d'oeil sur OpenWeb et quelques autres sites incontournables).

Hors, j'essaie de migrer sur un site dynamique en Php et BDD MySql et d'emblée, j'ai des bugs lors de la mise en ligne.

Mon site : description :
J'ai une page index.php qui contient (via la fonction "include") :
un header (header.php), un menu horizontal (menu-haut.php), une colonne gauche (contenant un menu "menu.htm) et une colonne droite, une partie centrale et un "footer".

Bref une présentation classique inspirée très clairement des tutos et modèles alsacréations.
Mais la différence entre le maître et moi, très humble newbie, c'est que cela ne marche plus du tout en php.

Lors que je mets le site en ligne, la bannière contenue dans le "header" n'apparaît plus (alors que tous les éléments ont bien été tranférés, que les chemins sont bons, les répertoires sont tous présents...)

Que vérifier ?

Mon code pour le header :

[i]<!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">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

<link href="css et script/css/style.css" type="text/css" rel="stylesheet" />
<link href="css et script/css/generic.css" type="text/css" rel="stylesheet" />
<link href="css et script/css/publications.css" type="text/css" rel="stylesheet" />
<link href="css et script/css/galleries.css" type="text/css" rel="stylesheet" />
<link href="css et script/css/generic-menus.css" type="text/css" rel="stylesheet" />
<script type="text/javascript" src="css%20et%20script/scripts/gallery_script.js"></script>


<!--[if lte IE 6]>
	<link rel="stylesheet" type="text/css" href="css/ie.css" media="screen" />
<![endif]-->
</head>	

<body>

<div id="conteneur">		
<div id="header"> <a href="index.php?page=accueil" class="sidelink2">accueil</a> 
  &nbsp; | &nbsp; <a href="index.php?page=credits" class="sidelink2">crédits</a> &nbsp; | &nbsp; <a href="mailto:info@premiumconseil.fr" class="sidelink2">contact</a> 
</div>[/i]



Mon code dans ma feuille de style :

[i]		#header {
					color: #999999;
					margin-top: 0px;
					height: 128px;
					background-align : center ;
					background-image: url('file:///C|/wamp/www/premium/img/banniere.png');
					background-repeat : no-repeat; 
					font-size: 10px;
					text-align: right;
					padding: 15px 25px 0 0;
					}[/i]


et mon index.php

  <!-- CE CONTENEUR CONTIENT :
		
			*********** UN "HEADER" ou "HAUT DE PAGE" comprenant image en toile de fond, logo, nom du site.... ***** -->
  				
						<?php include('header.php'); ?>
						
		  <!-- ********** UNE BARRE DE NAVIGATION PRINCIPALE (nommée "HAUT") ***** -->

						<?php include('menu-haut.php'); ?>
						
				<div id="gauche">
						<?php include('menu.htm');   // Nous appelons notre menu ?>
				</div>
				
						
		<!-- UNE PARTIE CENTRALE "DYNAMIQUE" MOUVANTE ***** -->
				
				<?php

  // On définit le tableau contenant les pages autorisées
  // ----------------------------------------------------
  $pageOK = array('news1' => 'news/news_27-12-08.php',
  					'news2' => 'news/news2_27-12-08.php',
					'actualites' => 'actualite1.php',
  					'presentation' => 'presentation.php',
					'coeur-de-metier' => 'coeur-de-metier.php',
					'valeurs' => 'valeurs.php',
					'coaching' => 'offre/coaching.php',
					'credits' => 'credits.php',
					'offre' => 'offre-old.php'
                  );

  // On teste que le paramètre d'url existe et qu'il est bien autorisé
  // -----------------------------------------------------------------
  if ( (isset($_GET['page'])) && (isset($pageOK[$_GET['page']])) ) {
    include($pageOK[$_GET['page']]);   // Nous appelons le contenu central de la page
  } else {
    include('publication1.php');   // Page par défaut quant elle n'existe pas dans le tableau
  }

?>

		<!-- UNE PARTIE "PIED DE PAGE" (nommée tout simplement "FOOTER" ) ***** -->
		<?php include('footer.php'); ?>




Question subsidiaire :
Mon conteneur générique doit bien se répartir entre les différents fichiers constituant ma page index.php.


En local tout fonctionne et j'ai bien vérifié la syntaxe (par rapport aux minuscules ! en particulier et il n'y a pas d'accents intempestifs !)

En clair, je n'ai pas tout compris Smiley decu


Merci à tous pour vos conseils éclairés
Modifié par Milo (01 Jun 2008 - 17:04)
Salut Milo et bienvenue Smiley cligne ,

je pense que le problème vient de ta ligne
 background-image: url('file:///C|/wamp/www/premium/img/banniere.png');
Il ne faut de toutes façons jamais laisser une url sous cette forme puisqu'une fois en ligne ça va être difficile de trouver le répertoire wamp Smiley langue !

A noter également que les url dans la ccs sont relatives à son emplacement dans l'arborescence et pas à la page html générée au final. Un petit exemple : tu as une page php à la racine de ton site. Au même niveau tu as un répertoire include qui contient les répertoires css et images ce qui donne
mapage.php
{include}
.............{css} styles.css
.............{images} monimage.gif

Si tu fais un <link> dans mapage.php vers styles.css l'image d'un header sera sous cette forme :
background-image: url(../images/monimage.gif)

A+ Smiley smile
Effectivement, il y a un léger décalage entre une visualisation locale sous Wamp5 et une fois mis en ligne. Smiley biggrin

J'ai procédé à la modification mais rien de neuf. Quelque soit le navigateur et en laissant un temps de latence par rapport à l'hébergement, toujours un vide. Le texte prévu apparait bien mais pas l'image.

J'ai dû "zapper" quelque chose Smiley fache
Alors ce n'est pas
background-image: url('file:///../img/banniere.png');
mais
background-image: url(../../img/banniere.png);
Smiley murf
Thanks a lot !

Merci Beaucoup !

DanKe Schön !

Ca marche !!!!!


Il ne me reste plus qu'à :
- faire réapparaître les fichiers qui ont disparus
- rajouter les nouvelles pages

et surtout

vérifier ma validité et mon accessibilité !

Il y a encore du travail. je crois que vous aurez encore quelques questions de ma part

Cordialement

Milo
Modifié par Milo (01 Jun 2008 - 17:06)
De rien Smiley cligne !

En passant, tu pourrais remplacer le compliqué
#conteneur {
	position : absolute;
	width : 775px;
        top : 5px ;
	left : 50%;
	margin-left : -375px;
	background-color : #c49657 ;
	border : 1px solid #3D2F14 ;
}
par un simple
#conteneur {
	width : 775px;
	margin : 5px auto;
	background-color : #c49657 ;
	border : 1px solid #3D2F14 ;
}
Merci pour le conseil

Je suis preneur de toute suggestion ou critique qui me permettra de simplifier mon code, d'en faciliter la maintenance.

et donc en final de rendre le site agréable à visiter

Cordialement

Milo
Modifié par Milo (01 Jun 2008 - 17:24)