Php dans formulaire
Résolu
powpowland
Messages postés
396
Date d'inscription
Statut
Membre
Dernière intervention
-
powpowland Messages postés 396 Date d'inscription Statut Membre Dernière intervention -
powpowland Messages postés 396 Date d'inscription Statut Membre Dernière intervention -
bonjour,
je prépare un site internet et je me suis rendu compte que je pouvais insérer du php dans un formulaire qui enregistre dans une bande de données et j'ai remarqué qu'il s'exécutait ensuite quand j'exploite la base de données...
comment peut-on faire pour bloqué le php ?
j'ai bien essayé ça mais ça ne marche pas :
j'ai essayé avec des \ et sans \ devant ?php mais
sa me met une erreur :
je prépare un site internet et je me suis rendu compte que je pouvais insérer du php dans un formulaire qui enregistre dans une bande de données et j'ai remarqué qu'il s'exécutait ensuite quand j'exploite la base de données...
comment peut-on faire pour bloqué le php ?
j'ai bien essayé ça mais ça ne marche pas :
$desc = preg_replace('#\?php#', '', $desc);
j'ai essayé avec des \ et sans \ devant ?php mais
sa me met une erreur :
Warning: preg_replace() [function.preg-replace]: Compilation failed: nothing to repeat at offset 0 in...
A voir également:
- Php dans formulaire
- Whatsapp formulaire opposition - Guide
- Formulaire de réclamation facebook - Guide
- Formulaire de reclamation instagram - Guide
- Easy php - Télécharger - Divers Web & Internet
- Confirmer le nouvel envoi du formulaire err_cache_miss - Forum Webmastering
4 réponses
Salut,
c'est une bonne remarque que tu t'es faite là ;) Il s'agit d'un des nombreux problèmes de sécurité liés aux formulaires.
C'est ce qu'on appelle une injection de code. L'utilisateur malveillant peut, par exemple, insérer du JavaScript ou du code HTML imprévu, ou du code PHP dans ton cas. Attention également aux injections SQL.
Pour être rigoureux, il faudrait que tu adoptes une « stratégie » d'utilisation de ta base de données, que tu la notes quelque part et que tu la respectes pour tous les scripts qui utilisent ta base. Par exemple, décider que toutes les données doivent être nettoyées avant d'être insérées.
La fonction strip_tags (https://www.php.net/manual/fr/function.strip-tags.php ) est là pour te simplifier la vie : elle retire tout ce qui peut être dangereux, et tu peux choisir de garder certains éléments. Si tu n'es pas à l'aise avec la documentation de Php.net, n'hésite pas à me poser des questions, ce site est une mine d'or quand on sait s'en servir.
En ce qui concerne ton erreur avec preg_replace, c'est normal (https://www.php.net/manual/fr/function.preg-replace.php ) : cette fonction cherche à interpréter le code PHP contenu dans ton $desc, et il doit y avoir des erreurs dedans (genre il n'aime pas quand la balise ?php est vide).
J'espère t'avoir aidé ;)
c'est une bonne remarque que tu t'es faite là ;) Il s'agit d'un des nombreux problèmes de sécurité liés aux formulaires.
C'est ce qu'on appelle une injection de code. L'utilisateur malveillant peut, par exemple, insérer du JavaScript ou du code HTML imprévu, ou du code PHP dans ton cas. Attention également aux injections SQL.
Pour être rigoureux, il faudrait que tu adoptes une « stratégie » d'utilisation de ta base de données, que tu la notes quelque part et que tu la respectes pour tous les scripts qui utilisent ta base. Par exemple, décider que toutes les données doivent être nettoyées avant d'être insérées.
La fonction strip_tags (https://www.php.net/manual/fr/function.strip-tags.php ) est là pour te simplifier la vie : elle retire tout ce qui peut être dangereux, et tu peux choisir de garder certains éléments. Si tu n'es pas à l'aise avec la documentation de Php.net, n'hésite pas à me poser des questions, ce site est une mine d'or quand on sait s'en servir.
En ce qui concerne ton erreur avec preg_replace, c'est normal (https://www.php.net/manual/fr/function.preg-replace.php ) : cette fonction cherche à interpréter le code PHP contenu dans ton $desc, et il doit y avoir des erreurs dedans (genre il n'aime pas quand la balise ?php est vide).
J'espère t'avoir aidé ;)
ok merci j'essayerai ça...
par contre pour le preg_replace, quand je met juste 'php' au lieu de '?php' ça marche... donc je sais pas...
par contre pour le preg_replace, quand je met juste 'php' au lieu de '?php' ça marche... donc je sais pas...