8792 sujets

Développement web côté serveur, CMS

Bonjour tout d'abord.

Bien tout est dit dans le titre... j'ai un script (voir un peu plus loin) seulement, j'ai appliqué une methode un peu... "bourrin" qui risque de rentre mon script super lourd et pas trés rapide d'utilisation... comme je suis encore un peu novice en la matiere je poste ici en esperant que certains d'entre vous m'aideront ... Merci d'avance


<?php
session_start();
if(isset($_SESSION['login']))
{
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
   <head>
       <title>Mon super site</title>
       <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
	   <link rel="stylesheet" media="screen" type="text/css" title="jeu.css" href="jeu.css" />
   </head>

   <body>

       <!-- L'en-tête -->

       <div id="en_tete">
       </div>
	   

       <!-- Les menus -->

       <div id="menu">       
           <div class="element_menu">
               <h3>Titre menu</h3>
               <ul>
                   <li><a href="page1.html">Lien</a></li>
                   <li><a href="page2.html">Lien</a></li>
                   <li><a href="combat.php">combat</a></li>
               </ul>
           </div>
       
           <div class="element_menu">
               <h3>Titre menu</h3>
               <ul>
                   <li><a href="jeu.php?page=carte">carte</a></li>
                   <li><a href="jeu.php?page=caracteristiques">caracteristiques</a></li>
                   <li><a href="jeu.php?page=deconnexion">deconnexion</a></li>
               </ul>
           </div>       
       </div>

       <!-- Le corps -->

           
		   <?php
    if ($_GET['page'] == "carte" OR $_GET['page'] == "gocergy" OR $_GET['page'] == "goparis" OR $_GET['page'] == "goforet" )
    {
        include("carte.php");
    }
	if ($_GET['page'] == "caracteristiques")
    {
        include("caracteristiques.php");
    }
	if ($_GET['page'] == "deconnexion")
    {
        include("deconnexion.php");
    }
    ?>
		   

       <!-- Le pied de page -->

       <div id="pied_de_page">
           <p>Copyright "Tout pourri Corporation" 2005, tous droits réservés</p>
       </div>

   </body>
</html>
<?php
}
else
{
echo "il n'y a rien ici";
}
?>

Donc ca c'est un peu une interface...
voici l'include en question:


<?php
$login=$_SESSION['login'];
if(isset($_GET['page']))
{
mysql_connect('localhost', 'root', '');
mysql_select_db('test');
if($_GET['page']=="gocergy")
{
mysql_query("UPDATE login SET lieu='cergy' WHERE `login`='$login'");
$lieu="cergy";
}
if($_GET['page']=="goparis")
{
mysql_query("UPDATE login SET lieu='paris' WHERE `login`='$login'");
$lieu="paris";
}
if($_GET['page']=="goforet")
{
mysql_query("UPDATE login SET lieu='foret' WHERE `login`='$login'");
$lieu="foret";
}
if($_GET['page']=="carte")
{
$rep=mysql_query("SELECT lieu FROM login WHERE `login`='$login' ");
$donnees = mysql_fetch_assoc($rep);
$lieu=$donnees['lieu'];
}
mysql_close();
}
?>



<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >

<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link rel="stylesheet" media="screen" type="text/css" title="jeu.css" href="jeu.css" />
</head>


<body>

<div id="personnage">
			<div class="image">
				<img src="Killion.jpg"/>
			</div>
			<div class="carac">
				<table border=0>
					<tr>
						<td>Nom: <?php echo $_SESSION['nom'];?></td>
						<td>Level: <?php echo $_SESSION['level'];?></td>
						<td>Experience: <?php echo $_SESSION['experience'];?>
					</tr>
					<tr>
						<td>Race: <?php echo $_SESSION['race'];?>
					</tr>
					<tr>
						<td>Lieu: <?php echo $lieu;?></td>
					</tr>
				</table>
			</div>
	   </div>

<div id="corps">
	<img src=Carte.jpg alt="Carte" usemap=#map>
	<MAP name=map>
	<AREA href="jeu.php?page=gocergy" shape="circle" coords="300,250,20" alt="Cergy">
	<AREA href="jeu.php?page=goparis" shape="circle" coords="160,690,20" alt="Paris">
	<AREA href="jeu.php?page=goforet" shape="circle" coords="400,690,70" alt="foret">
	</MAP>
</div>	
</body>
</html>


Voili voilou... les 2 endroits qui me posent probleme sont au debut de la 2eme partie de code... et niveau des include sur la 1er partie de code...
Merci ^^
Je ne sais pas trop pour l'optimisation, mais en tout cas ton Doctype est faux.
Voir la FAQ du forum au sujet de la bonne utilisation de XHTML 1.1 (il est probable que tu n'aies pas besoin de servir tes pages en "application/xhtml+xml", donc ça sera sans doute du HTML 4.01 ou du XHTML 1.0 en "text/html").
Voici comment je procède pour tout ce qui est "include" de pages :


<?php
$pages = array(
'blog'=>'Blog',
'serveur'=>'Serveur',
'contact'=>'Contact'
);

if(isset($_GET['page']) && array_key_exists($_GET['page'],$pages))
{
    include($_GET['page'].".php"); // je crois qu'il y a une faute ici, à vérifier !
}
else
    include("pagepardefaut.php");
?>


Tout d'abord je déclare un tableau avec le nom des pages que je vais inclure (c'est un tableau un peu spécial car je m'en sers également pour la balise <title>).

Ensuite je fais un test sur la variable $_GET, je regarde si elle est bien défini, et si le contenu de cette variable existe dans mon tableau défini au dessus. Si c'est le cas j'inclus la page en question, nommé à l'aide du contenu de la variable $_GET, si ce n'est pas le cas j'inclus une page par défaut.

Smiley cligne

Pour le 2e code j'utiliserai peut-etre un switch pour remplacer les 3 if qui font une update de la base de données
Modifié par chpego (12 Apr 2007 - 13:36)
merci ^^ ca va me permettre d'optimiser un peu tout ca
Si quelqu'un a d'autre idée n'hesitez pas ^^
Merci beaucoup en tout cas