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でエラーログ等のログファイルから指定した行数を表示させる方法
エラーログを最新分から指定行数表示させる プログラムがあって、どういった作りにな ...
-
-
PHPとPAY.JPを用いてサイト内にクレカ決済及びキャンセル機能を実装する方法
先日PHPとStripeを用いてサイト内にクレカ決済及びキャンセル機能を実装する ...
-
-
CodeIgniter4.4.4のインストールからHello Worldページ表示まで行う方法
以前CodeIgniter3を勉強したことがあったが新バージョンの4系がリリース ...
-
-
LINEのURLプレビューを表示させないようPHP側で制御する方法
公開中の特定のページのみLINEのURLプレビューを表示させないよう制御したいと ...