[PHP]Cookieによる連続投稿制限

PHPにて、Cookieを発行し、POSTを制限する方法です。

まず、ブラウザがCookieを発行可能かどうかチェックします。

if($_COOKIE['testCoockie']){//Cookieチェック
$cookie = 1;
}else{
if(setcookie("testCoockie","テスト",mktime(0,0,0,12,31,2050))){
$cookie = 1;
}else{
$cookie = 0;
}
}

次に、Cookieをセットして連続投稿を阻止します。

$back = $_SERVER['HTTP_REFERER']; //POST元のURL
if($cookie==1){//Cookieが有効ならPOST処理
if($_COOKIE['postcookie']){//連続投稿不可
$error = 1;
echo "連続して投稿できません。少し待ってから投稿してください。<br><a href={$back}>戻る</a>";
}else{//連続投稿でなければ実行
setcookie("postcookie","投稿管理",time()+30); //クッキーセットtime()+秒数で設定
header("Location: ".$back);
}
}
if($cookie==0){
$error = 1;
echo "Cookieが有効でなければ投稿できません!<br><a href={$back}>戻る</a>";
}

以上です。



PHP5 & XMLによるWebサービス構築

著者/訳者:佐久嶋 ひろみ

出版社:九天社( 2006-03 )

定価:¥ 3,150

単行本 ( 417 ページ )

ISBN-10 : 4861671000

ISBN-13 : 9784861671005


スポンサード リンク

Comments

コメントはまだありません。

コメントする

(必須)

(必須)