麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 開發(fā) > ThinkPHP > 正文

thinkphp框架 實現(xiàn)注冊登錄程序

2024-09-09 15:20:19
字體:
供稿:網(wǎng)友

thinkphp框架有感(一)

一:每一個html表單都需要在控制器中進行調(diào)用,否則無法對表單中的數(shù)據(jù)進行控制。

二:html中,<form>標簽里的action地址應(yīng)指向控制器中所對應(yīng)的方法名。

三:在瀏覽器中如果要通過某個控制器訪問視圖,應(yīng)訪問到該控制器中的各個方法。

如:http://localhost/tpone/index.php/Home/Index/register

不知為何我直接訪問http://localhost/tpone/index.php/無法實現(xiàn)頁面跳轉(zhuǎn)的功能,但訪問到方法層時就可以.

四:model

并不是必須要建,我目前對model不是很收悉,這次的程序完成品中,我最后是將所有的操作數(shù)據(jù)庫代碼寫在了controller中,沒有建立model.

五:多用var_dump()進行調(diào)試,它可以判斷出具體問題到底出在哪。

六:之前整個程序中困擾我最厲害的是各個文件的調(diào)用路徑和配置問題,好吧,其實我現(xiàn)在這方面也比較模糊.

這次”thinkphp框架實現(xiàn)注冊登錄程序“的最終成品一共由四個文件組成,一個控制器,三個html頁面.

具體功能:

1,注冊頁面輸入信息,信息會被寫入后臺數(shù)據(jù)庫.

2,登錄界面輸入正確的用戶名和密碼后會跳轉(zhuǎn)到新的頁面將數(shù)據(jù)庫中所有注冊人的信息展示出來(除了密碼).

3,登錄和注冊頁面之間可通過按鈕相互跳轉(zhuǎn).

IndexController.class.php文件:

  1. <?php 
  2. namespace Home/Controller; 
  3. use Think/Controller; 
  4.  
  5. class IndexController extends Controller 
  6.  
  7. //登錄控制器 
  8.  public function Index() 
  9.  { 
  10.   $this->display(index);//加載view/index目錄下的index.html文件 
  11.  } 
  12.  
  13.   function login() 
  14.   { 
  15.   $User =  M("User");    //  進行數(shù)據(jù)庫表的實例化,User是我的表名。得到$User對象。 
  16.  
  17.   $data['user'] = $_POST["user"]; 
  18.   $data['password'] = $_POST["password"]; 
  19.  
  20.     if($data['user'] == "" || $data['password'] == "")   
  21.     {   
  22.     echo "<script>alert('請輸入用戶名或密碼!'); history.back();</script>";  //js程序,彈出對話框顯示信息,并返回上個頁面 
  23.     }   
  24.     else  
  25.     $result = $User ->query("select user,password from user where user = '$_POST[user]' and password = '$_POST[password]'");//調(diào)用$User對象的query方法來執(zhí)行sql語句。和數(shù)據(jù)庫中的用戶名和密碼比對,看是否正確 
  26.         if($result)   
  27.         {   
  28. $this->success('登錄成功''result'); 
  29.         }   
  30.         else   
  31.         {   
  32.             $this->error('用戶名或密碼不正確!');   
  33.         }   
  34.     } 
  35.   } 
  36.  
  37.   //-------------------------------------------------------------------------------------------------------------- 
  38.  
  39.   //注冊控制器 
  40.   public function Register() 
  41.  { 
  42.   $this->display(register);//加載view/index目錄下的register.html文件 
  43.  } 
  44.  
  45.     function zhuce() 
  46.   { 
  47.   $User =  M("User");    //  進行數(shù)據(jù)庫表的實例化,User是我的表名。得到$User對象。 
  48.  
  49.   $data['user'] = $_POST["user"]; 
  50.   $data['password'] = $_POST["password"]; 
  51.   $data['passwordcheck'] = $_POST["passwordcheck"]; 
  52.   $data['sex'] = $_POST["sex"]; 
  53.   $data['subject'] = $_POST["subject"]; 
  54.  
  55.   if($data['user'] == "" || $data['password'] == ""|| $data['passwordcheck'] == ""|| $data['sex'] == ""|| $data['subject'] == "")   
  56.     {   
  57.         echo "<script>alert('請?zhí)顚懲暾?#39;);history.back(); </script>";  //js程序,彈出對話框顯示信息,并返回上個頁面 
  58.     }   
  59.   else  
  60. if($data['password'] == $data['passwordcheck'])     //密碼和確認密碼是否一致 
  61.     { 
  62.    $result = $User ->query("select user from user where user = '$_POST[user]'"); 
  63. if($result)    //如果為真,則已存在 
  64. echo "<script>alert('用戶名已存在');history.back();</script>"
  65. else 
  66. $User->add($data); 
  67. if($User)  
  68. echo "<script>alert('注冊成功!');history.back();</script>"
  69.         else  
  70. throw_exception("數(shù)據(jù)庫添加失敗"); 
  71.     } 
  72. else 
  73. echo "<script>alert('密碼不一致!');history.back();</script>"
  74.   } 
  75.  
  76.   //-------------------------------------------------------------------------------------------------------------- 
  77.  
  78.   //登錄后顯示結(jié)果控制器 
  79.  
  80.   function result() 
  81.   { 
  82.  $User =  M("User"); 
  83.  $data=$User->select(); 
  84.  $this->data=$data
  85.  $this->display(); 
  86.   } //Vevb.com 
  87.  
  88. ?> 

index.html文件:

  1. <!DOCTYPE 
  2. html 
  3. PUBLIC 
  4. "-//W3C//DTD XHTML 1.0 Transitional//EN" 
  5. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
  6. <html 
  7. xmlns="http://www.w3.org/1999/xhtml"> 
  8. <head> 
  9. <meta 
  10. http-equiv="Content-Type" 
  11. content="text/html; charset=utf-8" 
  12. /> 
  13. <title>登錄頁面</title> 
  14.  
  15. <style 
  16. type="text/css"> 
  17.  
  18.  
  19. #form1 
  20.  { 
  21.  
  22. width:250px; 
  23.  
  24. height:250px; 
  25.  
  26. margin:20px 
  27. auto; 
  28.  
  29. border:1px 
  30. #039 
  31. solid; 
  32.  
  33. padding:20px 
  34. 20px; 
  35.  } 
  36.  
  37. </style> 
  38.  
  39. <script 
  40. type='text/javascript'> 
  41.  function 
  42. freshVerify() 
  43.  { 
  44.  
  45.  
  46.  document.getElementByIdx_x_x_xx('verifyImg').src='__URL__/verify/'+Math.random(); 
  47.  
  48.  } 
  49.  
  50.  
  51. </script> 
  52.  
  53. </head> 
  54. <body> 
  55.  
  56. <form 
  57. name="form1" id="form1" method="post" 
  58. action="__URL__/login"> 
  59.  
  60. 登錄帳號:<br/><br/> 
  61.  
  62. 姓名:<input type="text" name="user"/> 
  63. <br/><br/> 
  64.  
  65. 密碼:<input type="password" 
  66. name="password"/> 
  67.  <br/><br/> 
  68.  
  69. <input type="submit" 
  70. name="submit" value="登錄"/> 
  71.  
  72. <a href="register.html">注冊</a>  
  73.  
  74. </form> 
  75. </body> 
  76. </html> 

register.html文件:

  1. <!DOCTYPE 
  2. html 
  3. PUBLIC 
  4. "-//W3C//DTD XHTML 1.0 Transitional//EN" 
  5. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
  6. <html 
  7. xmlns="http://www.w3.org/1999/xhtml"> 
  8. <head> 
  9. <meta 
  10. http-equiv="Content-Type" 
  11. content="text/html; charset=utf-8" 
  12. /> 
  13. <title>注冊頁面</title> 
  14.  
  15. <style 
  16. type="text/css"> 
  17.  
  18.  
  19. #form1 
  20.  { 
  21.  
  22. width:250px; 
  23.  
  24. height:250px; 
  25.  
  26. margin:20px 
  27. auto; 
  28.  
  29. border:1px 
  30. #039 
  31. solid; 
  32.  
  33. padding:20px 
  34. 20px; 
  35.  } 
  36.  
  37. </style> 
  38.  
  39. <script 
  40. type='text/javascript'> 
  41.  function 
  42. freshVerify() 
  43.  { 
  44.  
  45.  
  46.  document.getElementByIdx_x_x_xx('verifyImg').src='__URL__/verify/'+Math.random(); 
  47.  
  48.  } 
  49.  
  50.  
  51. </script> 
  52.  
  53. </head> 
  54. <body> 
  55.  
  56. <form 
  57. name="form1" id="form1" method="post" action="__URL__/zhuce">  
  58.  
  59. 注冊帳號:<br/><br/>  
  60.  
  61. 姓名:<input type="text" name="user" maxlength="16"/><br /><br />  
  62. 性別:<input type="radio" name="sex"  value="男" maxlength="16" />男  
  63.  
  64.  
  65.  <input 
  66. type="radio" 
  67. name="sex"  value="女" maxlength="16"/><br /><br />  
  68. 專業(yè):<input 
  69. type="text" 
  70. name="subject"  maxlength="16"/><br /><br />  
  71.  
  72.  
  73. 密碼:<input type="password" 
  74. name="password" 
  75.  maxlength="16"/><br /><br />  
  76. 確認密碼:<input type="password"name="passwordcheck" maxlength="16"/><br /><br />     
  77.  
  78. <input type="submit" name="btn1"     
  79. id="btn1" 
  80. value="提交" /> 
  81. <a 
  82. href="index.html">登錄</a> 
  83.  
  84. </form> 
  85. </body> 
  86. </html> 

result.thml文件:

  1. <html> 
  2. <head> 
  3. <title>信息頁面</title> 
  4. </head> 
  5. <body> 
  6. <b>目前已注冊的用戶</b><br/><br />  
  7. <foreach name="data" item="vo">   
  8.  
  9. <li>用戶名:{$vo.user}&nbsp;&nbsp; 
  10.  
  11.  
  12. 性別:{$vo.sex}&nbsp;&nbsp; 
  13. 專業(yè):{$vo.subject}<br/><br />  
  14. </li> 
  15.  
  16. </foreach> 
  17.  
  18. </body> 
  19. </html>

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 国产a一级片 | 欧美精品日日鲁夜夜添 | 性猛交ⅹxxx乱巴西 欧美日韩1区2区3区 | 国产色爱综合网 | 性欧美暴力猛交69hd | 欧洲精品久久久久69精品 | 日本一区二区在线看 | 国产精品成人av片免费看最爱 | 一区二区三区黄色 | 亚洲视频在线观看免费视频 | 久久久久久久爱 | 日韩激情 | 国产免费一区二区三区视频 | 亚洲一二区视频 | 久久精品国产99国产精品亚洲 | 第四色成人网 | 精品成人免费一区二区在线播放 | 91精品国产九九九久久久亚洲 | av电影在线观看网址 | 国产一区二区免费在线观看 | 毛片大全免费看 | av在线播放免费观看 | 康妮卡特欧美精品一区 | 激情久久一区二区 | 欧美黄在线 | 青青草成人影视 | 国产成人av在线播放 | 成人精品久久 | 久久日韩在线 | 日韩美香港a一级毛片免费 日韩激情 | 欧美国产永久免费看片 | 黄色片快播| 午夜精品福利视频 | 黄色片免费看网站 | 久久精品网 | 毛片三区| 国产精品1区2区在线观看 | 亚州精品国产 | 99精彩视频在线观看 | 双性精h调教灌尿打屁股的文案 | 高清一区二区在线观看 |