Eviter le passage de variables par l'URL
Fermé
Gizmil
Messages postés
706
Date d'inscription
mercredi 14 avril 2004
Statut
Membre
Dernière intervention
3 octobre 2022
-
Modifié par Gizmil le 11/03/2011 à 16:44
Mihawk Messages postés 4313 Date d'inscription mercredi 29 mars 2006 Statut Contributeur Dernière intervention 6 janvier 2015 - 12 mars 2011 à 10:24
Mihawk Messages postés 4313 Date d'inscription mercredi 29 mars 2006 Statut Contributeur Dernière intervention 6 janvier 2015 - 12 mars 2011 à 10:24
A voir également:
- Eviter le passage de variables par l'URL
- Lien url - Guide
- Url scam ✓ - Forum Mail
- Url blacklist - Forum Virus
- Url masquée pour votre sécurité - Forum TV & Vidéo
- Verifier url - Guide
4 réponses
Mihawk
Messages postés
4313
Date d'inscription
mercredi 29 mars 2006
Statut
Contributeur
Dernière intervention
6 janvier 2015
845
11 mars 2011 à 16:53
11 mars 2011 à 16:53
Hello,
En effet, les variables post nécessite l'utilisation d'un formulaire, accompagné de son bouton de type "submit". Tu récupèrerais alors les variables envoyées sous la forme $_POST['mavariable']
Si tu ne veux pas de formulaire, les variables GET restent incontournables.
En revanche, pour éviter les adresses à rallonge, tu peux te tourner vers une solution consistant à les "réécrire", à savoir l'URL rewriting !
En effet, les variables post nécessite l'utilisation d'un formulaire, accompagné de son bouton de type "submit". Tu récupèrerais alors les variables envoyées sous la forme $_POST['mavariable']
Si tu ne veux pas de formulaire, les variables GET restent incontournables.
En revanche, pour éviter les adresses à rallonge, tu peux te tourner vers une solution consistant à les "réécrire", à savoir l'URL rewriting !
pour passer une variable d'une page à une autre, et qui sera accesible sur toutes les pages d'ailleurs tu peux utiliser les $_SESSION.
sur toto.php si tu mets
$_SESSION['login'] = 'francis';
tu pourra, dans titi.php faire un <?=$_SESSION['login']?>
pour toutes les pages qui utiliseront les sessions il faut que tu apelle session_start(); au début de chaque page, avant tout le reste.
sinon pour tes variables en get et le référencement regarde la réécriture d'url qui te permettra d'avoir une page du style
ton-site.com/accueil.html
mais qui sera interprétée comme ton-site.php/index.php?page=accueil par tes scripts
sur toto.php si tu mets
$_SESSION['login'] = 'francis';
tu pourra, dans titi.php faire un <?=$_SESSION['login']?>
pour toutes les pages qui utiliseront les sessions il faut que tu apelle session_start(); au début de chaque page, avant tout le reste.
sinon pour tes variables en get et le référencement regarde la réécriture d'url qui te permettra d'avoir une page du style
ton-site.com/accueil.html
mais qui sera interprétée comme ton-site.php/index.php?page=accueil par tes scripts
Gizmil
Messages postés
706
Date d'inscription
mercredi 14 avril 2004
Statut
Membre
Dernière intervention
3 octobre 2022
65
12 mars 2011 à 01:42
12 mars 2011 à 01:42
Okkk ! Merci pour vos réponses, ça me semble parfait !
Concernant l'URL rewriting, ça évite les problèmes de sécurité ?
Concernant l'URL rewriting, ça évite les problèmes de sécurité ?
Mihawk
Messages postés
4313
Date d'inscription
mercredi 29 mars 2006
Statut
Contributeur
Dernière intervention
6 janvier 2015
845
Modifié par Mihawk le 12/03/2011 à 10:25
Modifié par Mihawk le 12/03/2011 à 10:25
En théorie si tu es rigoureux, tu vérifies toujours les variables _GET que tu récupères de manière à éviter que l'utilisateur puisse rentrer n'importe quoi et pirater ton site.
Après, on peut considérer oui que l'URL rewriting aide à la sécurité, puisque tu "camoufles" les URL que tu veux rendre invisibles.
Exemple :
http://www.monsite.com/* pourras être affiché en tant que http://www.monsite.com
Dans cet exemple, l'étoile signifie "n'importe quoi derrière le slash".
Ainsi tout ce qui se trouvera derrière le slash sera caché. Mais ne pas se méprendre, il existe surement des moyen pour aller voir ce qui se trouve derrière... D'où l'importance de toujours vérifier les variables récupérées.
Comme dit la loi : Never trust user input !
Tant qu'on ne fait pas, on ne sait pas.
Après, on peut considérer oui que l'URL rewriting aide à la sécurité, puisque tu "camoufles" les URL que tu veux rendre invisibles.
Exemple :
http://www.monsite.com/* pourras être affiché en tant que http://www.monsite.com
Dans cet exemple, l'étoile signifie "n'importe quoi derrière le slash".
Ainsi tout ce qui se trouvera derrière le slash sera caché. Mais ne pas se méprendre, il existe surement des moyen pour aller voir ce qui se trouve derrière... D'où l'importance de toujours vérifier les variables récupérées.
Comme dit la loi : Never trust user input !
Tant qu'on ne fait pas, on ne sait pas.