掲示板を運営しています。
以下のような書き込み
4O49uW ilklnpcutjrh, [url=http://nuukzuul.com/]npuyeu[/url], [link=http://xtpvyyu.com/]xtcqvu[/link], http://qxzlmooo.com/
をされます。
防止のために以下のようなスクリプトをつけました。
if (preg_match('/^(http|HTTP|ftp)(s|S)?:\/\/+[A-Za-z0-9]+\.[A-Za-z0-9]/',$data["msg"])){
throw(new Exception("適切な投稿をお願いします"));
}
httpがついていれば防止できるはずなのですが。
具体的にどう対処するのがよろしいでしょうか?
No.1ベストアンサー
- 回答日時:
前に別件で答えた内容と同じものになりますが、俺は 以下のようにしています。
文字コードはUTF8で統一してる前提です。
if (!preg_match("/[^\x01-\x7E]/" , mb_convert_encoding($Body , "SJIS" , "UTF8"))) { /* 無効 */ }
全角文字が入っていなければ無効にするだけです。
ただ、ぶっちゃけ どこかから拾ってきたコードで、自分でもよく分かってはいません。
ですので、リンクとか入っていなくても無効になってしまいますし、
逆に「おぼろげっしゃー」とか無意味な日本語でも書き込みは出来てしまいます。
・参考
http://hodade.adam.ne.jp/seiki/page.php?s_zenkaku
No.2
- 回答日時:
私の場合、
(1)jpドメイン以外をはじく。
(2)プロクシ通している場合ははじく。
(3)名前解決できない場合ははじく。
(4)URL欄に書き込みがある場合ははじく。
とすることで、自動スパム書き込みはほぼなくなりました。
人間が書き込んでいる場合は相手も柔軟に対応してくるので、決定打はなく、気がついたら消すという対処が最も簡単だと思います。
あと、私も"http://"が本文に入っていたらはじくようにしていましたが、相手は"ttp://~"とかの記述をしてくるようになったので、"ttp://","tp://","p://","://","//"をすべてはじくようにしたら、エロサイトの宣伝のはずなのにどこにもURLが書いてないという変な書き込みがされるようになりました。(^_^;
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) 掲示板専用スクリプト(http://php365.com/)などを使わなくてもプログラミング言語のみ 4 2022/06/12 20:44
- 教えて!goo 教えて!goo以外の質問サイトを含め、回答がつく順番を教えて下さい。 2 2022/05/10 13:43
- PHP 掲示板を資料を参考にして開発中ですが、画像がアップされません? 1 2022/11/21 06:44
- SSL・HTTPS 掲示板サイトへの書き込みができない件(ブラウザソフトを変えてもできない) 2 2022/11/20 10:48
- その他(法律) 仮にです:掲示板などに「刑事事件になる」書き込みをがあった場合 4 2022/09/29 04:49
- PHP 掲示板のセキュリティについてアドバイスお願い致します 1 2023/08/11 20:44
- その他(IT・Webサービス) 301リダイレクトの使い方について 7 2022/04/05 17:50
- MySQL 「掲示板のログイン画面」はPHP~MySQLに「データベース認証のシステム」方式です。 1 2022/09/27 05:00
- その他(SNS・コミュニケーションサービス) 償い方・死の覚悟 5 2023/08/13 08:15
- PHP isset — 変数が宣言されていること、そして null とは異なることを検査 1 2022/03/27 17:34
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
PHPで変数から1行目だけを取得...
-
PHPで<a>タグ内からURLと文字を...
-
PHPメールフォーム URLと半角...
-
VBAを使ってHTMLソースから特定...
-
Excelで数字のみを2倍3倍にする...
-
「/」を利用した正規表現
-
カンマ区切りの金額を検索する...
-
テキストから特定の文字列をす...
-
preg_replace_callback が渡す...
-
変数に指定文字列が含まれると...
-
写メールBBSの携帯ページSoftBa...
-
正規表現で「0」のみ抽出
-
正規表現 許可文字列 かつ ...
-
preg_matchの正規表現で
-
phpでif文内で&の記述に疑問が...
-
2つのif 構文が1つしか動作し...
-
PHP 複数行の正規表現
-
php 正規表現で(ただし○○は除...
-
preg_matchによるカタカナチェ...
-
PHP preg_matchでUnknown modif...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
preg_matchでエラーが出ます。
-
VBAを使ってHTMLソースから特定...
-
Excelで数字のみを2倍3倍にする...
-
PHPで変数から1行目だけを取得...
-
正規表現でシングルクォーテー...
-
、"(ダブルクォーテーション)...
-
正規表現で「0」のみ抽出
-
住所から特定の文字列、数値を...
-
PHPで あるフォルダ内の、特定...
-
phpでhtmlソースを解析し、文字...
-
PHPで<a>タグ内からURLと文字を...
-
正規表現で特定のHTMLタグのク...
-
PHPの正規表現で住所を分けるに...
-
Smartyを使用した、テンプレー...
-
PHPによるIPアドレスマッチ
-
正規表現で、半角大文字と半角...
-
php 正規表現で(ただし○○は除...
-
PHPメールフォーム URLと半角...
-
「半角数字」と「+」を許可する...
-
preg_matchでのマッチが正しく...
おすすめ情報