"?page=..."

Karim -  
MastercroW Messages postés 1094 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Il y a des années que j'ai arrêté le PHP. Je n'étais pas très doué, juste les bases de chez bases (et j'utilisais majoritairement les outils proposés par les logiciels tels que Namo et Dreamweaver, je ne créais pas mes propres codes ou quoi que ce soit du genre...). Simplement, pour aider une amie qui veut créer son propre site, je recherche un code qu'il y avait sur le site sur lequel je bossais en tant que rédacteur (j'étais rédacteur, c'est la raison pour laquelle j'ai pu entrevoir un peu le PHP, mais je n'ai jamais programmé de site).

Sur ce site, il y avait un code placé dans l'index (index contenant le design et la mise en page du site). On plaçait le code là où on voulait que les pages s'affichent. Ensuite, pour les liens vers ces pages, il suffisait de mettre un truc du genre "?page=NOMDELAPAGE.php" et lorsqu'on cliquait sur ce lien, la page en question s'affichait à l'endroit de l'index où le code était placé...

Je sais que c'est un peu compliqué, et je ne m'y connais pas du tout, mais j'aimerais simplement retrouvé ce code pour aider mon amie. Si quelqu'un peut m'aider, je lui en serait super reconaissant, car voilà un moment que je cherche en vain...

Merci à tous !

Karim

A voir également:

4 réponses

MastercroW Messages postés 1094 Date d'inscription   Statut Membre Dernière intervention   163
 
Bonjour,

C'est sur qu'en utilisant ce que vous utiliser vous pouvez avoir des attaques qui peuvent endommagés votre base de donnée.
En utilisant ceci, il y a moins de risques qu'il y ai des failles.

Changer :
if (isset($_GET['page'])){ 

//on utilises notre variable: 
// par exemple pour simplement l'afficher 
echo $_GET['page']; 

} 

Par
if (empty($_GET['page'])) $_GET['page'] = 'index';
if(!file_exists("page/".$_GET["page"].".php")) $_GET["page"]="404";
$urlInclusion = 'page/'.$_GET['page'].'.php';
include($urlInclusion);		
2
SlyK Messages postés 854 Date d'inscription   Statut Contributeur sécurité Dernière intervention   147
 
Bonsoir,

Si vous faites ceci il faut faire attention, car plusieurs attaque peuvent être possible.


Cordialement,
SlyK
1
Karim
 
Merci pour votre réponse si rapide ! De quel genre d'attaques parlez-vous ?
0
SlyK Messages postés 854 Date d'inscription   Statut Contributeur sécurité Dernière intervention   147
 
Inscrivez-vous, je vous enverrais un MP avec le lien d'un site.

Bien sûr, tout dépend de la méthode de codage.
Une white list sera nécessaire.
0
AssassinTourist Messages postés 6029 Date d'inscription   Statut Contributeur Dernière intervention   1 312
 
Bonjour,
Pourquoi ne pas poster vos explications ici ?
0
SlyK Messages postés 854 Date d'inscription   Statut Contributeur sécurité Dernière intervention   147
 
Tout simplement parce que le lien que je vais donner pourrait inciter certaines personnes à hacker des sites.
0
Garth
 
mapage.php?page=mavaleur

Ce sont les variables GET en php.

Elles peuvent venir d'un formulaire ou être écrite directement dans le lien.

Allez voir du côté de google : php GET.

Pour less récupérer il faut que la page ciblée comportes le code :
<?php

if (isset($_GET['page'])){

//on utilises notre variable:
// par exemple pour simplement l'afficher
echo $_GET['page'];

}

Pour indiquer cette variable il faut soit un formulaire soit indiquer dans un lien cette variable, soit utiliser la fonction header() en php

Voici un exemple pour le lien:

<a href="mapage.php?page=couscous">couscous</a>
Avec la fonction echo précédente affichera dans ma page.php

couscous

Si vous faites ceci il faut faire attention, car plusieurs attaque peuvent être possible.
N'importe qui peut changer la variable dans la barre d'adresse en tapant ce qu'il veut. Les attaques c'est surtout si la valeur est utilisé pour une requête dans une base de données, en tapant une requête un internaute peut simplement faire ce qu'il veut de la base(récupérer, supprimer, fausser...) donc attention.
1
SlyK Messages postés 854 Date d'inscription   Statut Contributeur sécurité Dernière intervention   147
 
C'est surtout que d'après ce qu'il dit il compte faire un include de la variable GET.
Donc obliger de faire passé la variable par un test dans une withe list.

Sinon, bonjour les attaques par Inclusions dynamiques.
0
graffx Messages postés 6506 Date d'inscription   Statut Contributeur Dernière intervention   1 975
 
tout a fait.
0