Vérification de la source des données formulaire

Vérification de la source des données formulaire - PHP - Programmation

Marsh Posté le 21-12-2003 à 20:28:19    

J'ai un fichier formulaire.php et un fichier resultat.php.
Je rentre des données dans mon formulaire, quand je les valide il se renvoi à lui même, effectue le traitement des données et redirige ensuite le navigateur vers resultat.php qui affiche les informations.
Le problème que je vois c que n'importe qui pourrait envoyer un résultat de formulaire à formulaire.php et afficher grace à celà des informations que je ne souhaite pas.
Je veux donc vérifier d'où proviennent les données et je cherche à ce propose la fonction en php qui permet de savoir quelle est la dernière page visitée avant l'appel de formulaire.php
qqun la connait? j'ai pas trouvé dans l'aide php...
ya t'il un autre moyen?
merci d'avance

Reply

Marsh Posté le 21-12-2003 à 20:28:19   

Reply

Marsh Posté le 22-12-2003 à 00:36:58    

et ça, ça donne quoi ?
 
$_SERVER['REFERER']  

Reply

Marsh Posté le 22-12-2003 à 09:29:45    

bah ça donne ça ;)
 
Notice: Undefined index: REFERER in l:\dev\program files\apache server\apache\htdocs\private\gummiwars\potc\overview.php on line 25

Reply

Marsh Posté le 22-12-2003 à 10:08:38    

Utiliser le referer n'est pas fiable du tout surtout si on veux s'assurer que le visiteur nessaye pas de bidouiller.
 
Tu peux par exemple utiliser les sessions.
Dans ce cas, tu peux garder en session la trace du premier appel à formulaire et le vérifier lors du second passage.


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Marsh Posté le 22-12-2003 à 10:33:45    

$_SERVER['HTTP_REFERER'] fonctionnera mieux.
 
Mais bon voir réponse de Mara's

Reply

Marsh Posté le 22-12-2003 à 13:34:08    

@Delirium : oui ça ça marche plutôt bien
 
@Mara's : tu peux un peu expliciter car je suis pas sûr de saisir...
 
En fait il faudrait pouvoir connaitre la provenance des données du formulaire... ( adresse absolue de la page provenance ) ce qui me parait pas tro mal par $_SERVER['HTTP_REFERER'], où réside le problème de sécurité avec cette méthode?

Reply

Marsh Posté le 22-12-2003 à 14:49:36    

Le REFERER est fourni par le navigateur. Tu ne peux pas être certain que tous les navigateur vont l'envoyer.
D'autre part, le problème, c'est qu'il est tout à fait possible de simuler les requêtes d'un navigateur.
 
Avec les sessions, tu peux facilement mettre en place un système qui te permet de suivre la navigation d'un utilisateur de ton site. Cette trace est alors (presque) fiable puisque c'est ton serveur qui la gère.
Un règle de base en matière de sécurité, c'est de ne pas faire confiance dans les données que le client t'envoie.


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Marsh Posté le 22-12-2003 à 17:50:45    

ok, compris, je savais pas que REFERER était donné par le navigateur... c klr que si c le cas c pas du tout fiable pour moi

Reply

Sujets relatifs:

Leave a Replay

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