Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Interdir mot dans formulaire

3 réponses
Avatar
Jonat
Bonjour tout le monde ;-)

if(isset($_POST["table"]) && isset($_POST["post"]) &&
!preg_match('#http://#', $_POST["message"])) {

Je n'y connais rien en programmation. On m'avait déjà aidé pour interdire le
mot "http://". Je souhaite savoir comment faire pour en interdire d'autres
(comme "comment+chiffre")

Merci d'avance ;-)

Jonat.

3 réponses

Avatar
Olivier Miakinen
Bonjour,

Le 20/04/2009 16:36, Jonat a écrit dans fr.comp.lang.php :

if(isset($_POST["table"]) && isset($_POST["post"]) &&
!preg_match('#http://#', $_POST["message"])) {



Un isset($_POST["message"]) avant le preg_match() ne peut pas faire de
mal non plus...

Je n'y connais rien en programmation. On m'avait déjà aidé pour interdire le
mot "http://".



Ok. Note au passage que cela n'interdit pas "HTTP://" ni "https://", au
cas où tu en aurais besoin aussi (mais tu ne parles absolument pas du
besoin). Note aussi que pour une chaîne fixe telle que celle-ci il est
plus efficace d'utiliser strstr au lieu de preg_match :

if(isset($_POST["table"]) && isset($_POST["post"]) &&
(strstr($_POST["message"], 'http://') === FALSE)) {


Je souhaite savoir comment faire pour en interdire d'autres
(comme "comment+chiffre")



Je ne suis pas sûr de bien comprendre, alors je vais supposer que c'est
vraiment la chaîne "comment+chiffre" que tu veux interdire.

Dans ce cas :
!preg_match('#comment+chiffre#', $_POST["message"])
Ou bien :
strstr($_POST["message"], 'comment+chiffre') === FALSE

Cela dit, si tu veux faire des vérifications un peu plus complexes, donc
nécessitant vraiment preg_match(), le groupe fr.comp.lang.regexp est
beaucoup plus adapté ; d'ailleurs j'y fais suivre la discussion.


Enfin, je te signale que ton adresse antispam est doublement fautive,
d'une part à cause des « _ » dans la partie droite, et d'autre part
parce qu'elle ne se termine pas par « invalid ». Je te suggère donc de
remplacer :

par :


Merci !
Avatar
Jonat
"Jonat" a écrit dans le message de groupe de
discussion : 49ec6bbc$0$17745$
Bonjour tout le monde ;-)

if(isset($_POST["table"]) && isset($_POST["post"]) &&
!preg_match('#http://#', $_POST["message"])) {

Je n'y connais rien en programmation. On m'avait déjà aidé pour interdire
le mot "http://". Je souhaite savoir comment faire pour en interdire
d'autres (comme "comment+chiffre")

Merci d'avance ;-)

Jonat.



Une SDSL, combien de km max ? Quel est le principe de fonctionnement ?

Je suis d'accord, une transfix c'est bien, quand y'a pas un modem qui
merdouille (j'ai souvent des prob de synchro avec des pchittttt voire rien
du tout), mais si FT vient à ne plus proposer d'LS dans quelques temps, vers
quoi allons nous nous tourner ?
Avatar
Jonat
"Jonat" a écrit dans le message de groupe
de discussion : 49ecf344$0$12626$
"Jonat" a écrit dans le message de groupe de
discussion : 49ec6bbc$0$17745$
Bonjour tout le monde ;-)

if(isset($_POST["table"]) && isset($_POST["post"]) &&
!preg_match('#http://#', $_POST["message"])) {

Je n'y connais rien en programmation. On m'avait déjà aidé pour interdire
le mot "http://". Je souhaite savoir comment faire pour en interdire
d'autres (comme "comment+chiffre")

Merci d'avance ;-)

Jonat.



Une SDSL, combien de km max ? Quel est le principe de fonctionnement ?

Je suis d'accord, une transfix c'est bien, quand y'a pas un modem qui
merdouille (j'ai souvent des prob de synchro avec des pchittttt voire rien
du tout), mais si FT vient à ne plus proposer d'LS dans quelques temps,
vers quoi allons nous nous tourner ?



Oups, j'ai posté un message dans le mauvais NG. Toutes mes excuses.