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にてmicrotimeで秒数を測定した際「xxxxxE-5」のような値になる場合の対応方法
PHPで過去記事を参考の上、あるプログラムの処理にかかった時間を測定しようとした ...
-
-
PHPMailerでエンベロープFrom(Return-Path)を指定する方法
同じメールアドレスから送信したメールがmb_send_mail関数だと受信できる ...
-
-
PHP5.4系でAPCが上手く動かなかったので5.5にアップデート&Zend OPcache導入
PHP5.3系から5.4系にアップデートしてから、WordPressがちょっと重 ...
-
-
PHPでメール送信時に返信先(Reply-To)を指定する方法
PHPにてメールを送信し、そのメールに対して返信しようとすると通常は送信元のメー ...
-
-
PHPにて指定した期間内のランダムな日付をn件生成し、日付順にソートした上で受け取る方法
PHPにて指定した期間内のランダムな日付を指定した数だけ生成し、さらに日付順にソ ...