勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

PHPでフォーム送信の際に禁止ワードのチェック及び制限をかける方法

   2024/01/15  PHP

掲示板等の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 / metaタグ / htaccess)の方法で301リダイレクト
複数(PHP / metaタグ / htaccess)の方法で301リダイレクト

サイトのディレクトリやファイル名を大幅に変えるという案件があった。それ自体は問題 ...

PHPでJSONデータを見やすく整形した上で表示させる方法
PHPでJSONデータを見やすく整形した上で表示させる方法

PHPで何らかのデータをjson_encodeでJSONに変換し、そのままech ...

PHPでダミー画像(プレースホルダー画像)を表示する「PHP-Dummy-Image-Generator」の利用方法
PHPでダミー画像(プレースホルダー画像)を表示する「PHP-Dummy-Image-Generator」の利用方法

先日JavaScriptでダミー画像(プレースホルダー画像)を表示する「Hold ...

PHPにてmicrotimeで秒数を測定した際「xxxxxE-5」のような値になる場合の対応方法
PHPにてmicrotimeで秒数を測定した際「xxxxxE-5」のような値になる場合の対応方法

PHPで過去記事を参考の上、あるプログラムの処理にかかった時間を測定しようとした ...

PHPの日付・時刻関連
PHPの日付・時刻関連

使えそうなものをまとめてメモ。 【関数】 ----------- ■date 日 ...