PHPでフォーム送信の際に禁止ワードのチェック及び制限をかける方法
2024/01/15
掲示板等のformを送信する際に特定の禁止ワードが含まれていないかチェックするプログラムというのを以前JavaScriptで作ったけどPHP版も必要になった。以下に実装方法をメモ。
JavaScript版
https://taitan916.info/blog/archives/2609
PHP版ソース
<?php /* 手続き型版 */ $body = 'tsesあああtaaa'; //チェックしたい本文 $ng_words = array('test','hoge','あああ'); //禁止ワード $flg = 0; foreach( $ng_words as $word ){ if(strpos($body, $word) !== false){ $flg = 1; break; } } if( $flg ){ //禁止ワードが含まれている場合の処理 }else{ //禁止ワードが含まれていない場合の処理 } /* 関数版 */ function check_word( $check_data ){ $ng_words = array('test','hoge','あああ'); //禁止ワード $flg = true; foreach( $ng_words as $word ){ if(strpos($check_data, $word) !== false){ $flg = false; break; } } return $flg; //禁止ワードが含まれていればfalse、含まれていなければtrueを返す }
その他
$bodyのところを$_POST['bbs_body']とかで受け取ったものにすれば良い。また、JavaScript側からAjaxで送信してチェックするという使い方もいける。
関連記事
-
-
PHPでメール送信時に返信先(Reply-To)を指定する方法
PHPにてメールを送信し、そのメールに対して返信しようとすると通常は送信元のメー ...
-
-
PHPにて「みんなの自動翻訳」のAPIで指定したテキストの言語判定する方法
迷惑メール対策等でメール本文が日本語のもののみ受信したい場合がある。ただ、本文内 ...
-
-
PHPにて配列の出力時にジェネレータを利用してメモリを節約する方法
PHPにて大量のデータが格納された配列をforeach等でループ処理するような場 ...
-
-
PHPにて西暦から干支(十二支)を計算し表示する方法
先日MySQLにてSELECT時にdate型のカラムから干支(十二支)を計算し表 ...
-
-
PHPで指定日から曜日を割り出す
曜日ってどうやって割り出すの? となったのでメモ。 ■リファレンス http:/ ...