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で作成する方法
ソシャゲのガチャみたいな当選確率が異なる抽選システムをPHPで作成したかった。具 ...
-
-
PHPでCSVを簡単に取り扱える「LeagueCSV(thephpleague / csv)」の利用方法
PHPでCSVファイルの書き込みや読み込みを行う際、バニラPHPで対応していたが ...
-
-
PHPでランダムな値を取得したいケース諸々の対応方法
テストデータを作成する際にランダムな値を入れたかったけど、色々ケースがあったので ...
-
-
PHP8系からは文字列検索はstrposよりstr_containsが良さそう
PHP8.0のアップデートに関する記事を読んでいたところstr_contains ...
-
-
PHPで外部のAPIにリクエストする際に並列処理(非同期実行)する方法
あるシステムからPHPで外部のAPIにリクエストしたかった。ただ、複数回リクエス ...