Bonjour,


je code en html, php, css et n'utilise pas de frames pour mon site
mais plutôt les div.

Pour afficher le contenu d'un lien situé dans un div, dans l'espace de navigation
(donc un div différent), je fais quelque chose ressemblant à ceci:



Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
 
...
...
...
 
<div id="menu">
<a href="?zone=inscription" >S'inscrire</a>
</div>
 
...
...
...
 
<div id="centre">
<?php 
 
@$choix=$_GET['zone']; //Erreur désactivée pour EasyPHP
 
if (isset($choix)){
	switch ($choix){
   	case "inscription" : include('inscription.php'); break;			
 
	default     	   : include('home.php'); break;
	}
}
else
	include('home.php');	 
?>
 
</div>
 
...
...
...
La question que je me pose concerne l'affichage de l'url complète,
càd que si l'utilisateur clique le lien, il sera affiché dans le div
comme souhaité, mais l'url le lui dira:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
host/index.php?zone=inscription
et evidemment je ne souhaite pas qu'il le sache!

(j'ai vu quelques exploits possibles, les shell:
en gros à la place de mon zone="inscription", l'utilisateur malveillant
met ce qu'il veut afin de rediriger vers un script malicieux.)

D'un côté je me dis qu'avec mes cases limités et mon else ce n'est pas possible,
d'un autre, je n'en sais rien, et me tourne donc vers vous

Dans un premier temps:
Est-ce que cette approche de faire le site est bonne,
(les différents div
et le système d'affichage).
Ou y a-t-il une meilleure alternative?

Ensuite, j'intégrerai sûrement un système d'authentification, et les pages
seront donc limités à certains.. vous me voyez sans doute venir:
Mr X ne devra pas en bidouillant l'url et changeant la zone, pouvoir accéder n'importe où!
(d'où l'utilité de cacher ces urls, ensuite je ferais les restrictions
d'accès avec une base de données)

J'attends donc vos conseils,
merci!