Comment bien sécuriser la fonction $_GET ?

Résolu/Fermé
Mitrails Messages postés 42 Date d'inscription samedi 7 mars 2015 Statut Membre Dernière intervention 8 avril 2015 - 2 avril 2015 à 11:26
Anth0x Messages postés 2736 Date d'inscription lundi 22 janvier 2007 Statut Membre Dernière intervention 20 avril 2016 - 2 avril 2015 à 16:23
Bonjour,
Je travaille actuellement sur une petite messagerie en php
il y'a donc une icone tout à gauche du message pour le lire et une icone a droite pour supprimer les message (sur chaque message).
Je voudrais utiliser la fonction $_GET pour la lecture et la suppresion.
Malgré mes nombreuses recherche qui à chaque fois sont différente je cherche à faire une fonction par exemple si il veut lire le message ca sera: http://www.site.com/messagerie/index.php?message=3

Je sais faire la fonction pour qu'il selectionne dans la BDD l'id du message 3
mais comment bien le sécuriser ?

- Contre les injections SQL
- Contre les modifications de l'URL ( qu'il puisse pas lire le message de quelqu'un d'autre en modifiant l'url en changeant le 3 pour un 10 par exemple ? )

J'espère avoir été clair n'hésiter pas à me demander pour plus d'infos.

Merci d'avance pour vos réponses!

1 réponse

Anth0x Messages postés 2736 Date d'inscription lundi 22 janvier 2007 Statut Membre Dernière intervention 20 avril 2016 965
2 avril 2015 à 11:32
Salut,

Pour les injections SQL : http://openclassrooms.com/courses/eviter-les-injections-sql

Pour la modification d'URL : https://openclassrooms.com/forum/sujet/probleme-get-empecher-une-modification-url-32275
0
Mitrails Messages postés 42 Date d'inscription samedi 7 mars 2015 Statut Membre Dernière intervention 8 avril 2015
Modifié par Mitrails le 2/04/2015 à 12:49
Merci de ta réponse mais concernant la modification de l'URL c'est du PDO c'est des script long est compliqué de plus il y'a beaucoup de post avec des codes faux. Tu n'aurais pas un lien sur in simple exemple ?
0
Anth0x Messages postés 2736 Date d'inscription lundi 22 janvier 2007 Statut Membre Dernière intervention 20 avril 2016 965 > Mitrails Messages postés 42 Date d'inscription samedi 7 mars 2015 Statut Membre Dernière intervention 8 avril 2015
Modifié par Anth0x le 2/04/2015 à 13:03
PDO c'est obligatoire depuis PHP 5.5.

Pour faire "simple" il faut passer par les sessions PHP, tu peux aussi utiliser l'URL Rewriting ça évite d'avoir les liens en "brut".
0
Mitrails Messages postés 42 Date d'inscription samedi 7 mars 2015 Statut Membre Dernière intervention 8 avril 2015
2 avril 2015 à 13:13
Ha pourquoi ça obligatoire ?
mysqli est très bien aussi non ?
0
Anth0x Messages postés 2736 Date d'inscription lundi 22 janvier 2007 Statut Membre Dernière intervention 20 avril 2016 965
Modifié par Anth0x le 2/04/2015 à 13:21
C'est bien quand tu sais pas codé en objet, sinon PDO gagne largement le match (vu que c'est unique de l'orienté objet) :

https://code.tutsplus.com/tutorials/pdo-vs-mysqli-which-should-you-use--net-24059

Et vu que l'OO c'est l'avenir, vaut mieux s'y mettre tout de suite.
0
Mitrails Messages postés 42 Date d'inscription samedi 7 mars 2015 Statut Membre Dernière intervention 8 avril 2015
2 avril 2015 à 13:26
Mouais, mais quand tu as toujours codé en mysql/mysqli c'est carrément autre chose!
0