程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> php開發中mysql表單提交防止重復刷新的實現

php開發中mysql表單提交防止重復刷新的實現

編輯:MySQL綜合教程

下面為您介紹的是php開發中mysql表單提交防止重復刷新的實現方法,如果您之前遇到過類似的問題,不妨一看。

數據庫為jokes,表為jokes,添加一個笑話為例
mysql表單提交頁面:

  1. <HTML> 
  2. <HEAD> 
  3. <TITLE> Our List of Jokes </TITLE> 
  4. </HEAD> 
  5. <BODY> 
  6.  
  7. <?php 
  8. session_start(); // 啟用session  
  9. $timetime = time();  
  10. $key ="sess_" . $time; // 根據時間生成一個隨機的session key  
  11. $_SESSION[$key] = $time; // 設置session的值  
  12. ?>   
  13.  
  14. <FORM ACTION="input.php?tjid=1" METHOD=POST> 
  15. <P>Type your joke here:<BR> 
  16. <TEXTAREA NAME="joketext" ROWS=10 COLS=40 WRAP></TEXTAREA><BR> 
  17. //通過隱藏表單將 session 的 key傳遞到服務端處理  
  18. <input type="hidden" name="session_key" value="<?php echo $key;?>" /> 
  19. <INPUT TYPE=SUBMIT NAME="submitjoke" VALUE="SUBMIT"> 
  20. </FORM> 
  21.  
  22. </BODY> 
  23. </HTML> 
  24.  
  25. 處理頁面:  
  26. <HTML> 
  27. <HEAD> 
  28. <TITLE> Our List of Jokes </TITLE> 
  29. </HEAD> 
  30. <BODY> 
  31. //連接數據庫:  
  32. <?php 
  33. $dbcnx =mysql_connect("localhost","root","******");  
  34. if (!$dbcnx) {  
  35. echo( "<P>Unable to connect to the " .  
  36. "database server at this time.</P>" );  
  37. exit();  
  38. }  
  39. // Select the jokes database  
  40. if (! @mysql_select_db("jokes") ) {  
  41. echo( "<P>Unable to locate the joke " .  
  42. "database at this time.</P>" );  
  43. exit();  
  44. }  
  45. //啟動session:  
  46. session_start();  
  47. $key = $_POST['session_key'];   
  48. if(!$key || $_SESSION[$key] != substr($key, 5)){  
  49. // 如果沒有傳 session_key 參數  
  50. // 或者 session_key 參數值截斷 sess_後的數字 與 session參數值不匹配  
  51. unset($_SESSION[$key]); // 刪除 session 值   
  52. echo "chu cuo la";// 然後考慮是否要提示錯誤,或者轉入另一個頁面  
  53. exit(); // 終止頁面代碼執行   
  54. }  
  55.  
  56. // 下面進行數據寫操作   
  57. if ("SUBMIT" ==$_POST["submitjoke"] ) {  
  58. $sql="INSERT INTO Jokes (joketext)  
  59.     VALUES ('$_POST[joketext]')  
  60.     ";  
  61. if (mysql_query($sql)) {  
  62. echo("<P>Your joke has been added.</P>");  
  63. } else {  
  64. echo("<P>Error adding submitted joke: " .  
  65. mysql_error() . "</P>");  
  66. }  
  67. // 數據操作完成後,刪除session   
  68. unset($_SESSION[$key]);   
  69. }  
  70. ?> 
  71.  
  72. //顯示笑話內容:  
  73. <P> Here are all the jokes in our database: </P> 
  74. <BLOCKQUOTE> 
  75. <?php 
  76. $result = mysql_query(  
  77. "SELECT * FROM Jokes");  
  78. if (!$result) {  
  79. echo("<P>Error performing query: " .  
  80. mysql_error() . "</P>");  
  81. exit();  
  82. }  
  83. // Display the text of each joke in a paragraph  
  84. while ( $row = mysql_fetch_array($result) ) {  
  85. echo("<P>" . $row["JokeText"] . "</P>");  
  86. }  
  87. ?> 
  88.  
  89. </BODY> 
  90. </HTML>   
  91.  

MySQL大表備份的簡單方法

MySQL分表處理的實現方法

MySQL授權表使用示例

MySQL內存表的弊端

MySQL獨立表空間的優缺點

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved