以前講述的都是利用js來(lái)防止用戶重復(fù)提交數(shù)據(jù),但是如果用戶利用機(jī)器你的js就沒(méi)有一點(diǎn)辦法防止用戶重復(fù)提交數(shù)據(jù)了,下面我來(lái)介紹php防止重復(fù)提交數(shù)據(jù)程序.
利用session來(lái)操作,代碼如下:
- <?php
- session_start();
- $_SESSION['num'] = 0;
- if(isset($_POST['action'] && $_POST['action']=='submit')){
- if($_SESSION['num'] == 0){
- echo '<a href="'.$_SERVER['PHP_SELF'].'">'請(qǐng)?jiān)俅螄L試</a>;'
- $_SESSION['num'] = 1;
- }else{
- echo '您已經(jīng)提交過(guò)了,請(qǐng)不要重復(fù)提交';
- }
- }
- ?>
利用cookie來(lái)解決,提交頁(yè)面代碼如下a.php代碼如下:
- <form id="form1" name="form1" method="post" action="t2.php">
- <p>說(shuō)明
- <input type="text" name="titile" />
- </p>
- <p>
- <input type="submit" name="Submit" value="提交" />
- </p>
- </form>
php代碼如下:
- <?php
- setcookie("onlypost", 't');
- //設(shè)置cookie,可以帶上時(shí)間值。像有些論壇防止灌水就可以將你的一些基本信息存放到里面。
- ?>
處理頁(yè)面b.php代碼如下:
- <?php
- if($_COOKIE['onlypost'] == 't'){
- print_r($_COOKIE);
- //處理提交的內(nèi)容 如果驗(yàn)證成功則處理
- print "ok";
- setcookie("onlypost", 'f'); //改變cooike值刪除也可以了
- }
- ?>
新聞熱點(diǎn)
疑難解答