国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

php調用mysql存儲過程會員登錄驗證案例分析

2024-07-24 12:35:09
字體:
來源:轉載
供稿:網友
  本實例采用php調用msyql存儲過程實現用戶登錄,注冊,修改密碼等功能,前面部分講了Mysql如何創建存儲過程,如果想用Mysql存儲過程的朋友,值得參考,本文實例分析了php調用mysql存儲過程的方法,分享給大家供大家參考,具體分析如下:
 
  Mysql存儲過程創建語法,代碼如下:
 
  CREATE PROCEDURE和CREATE FUNCTION :
  
  CREATE PROCEDURE sp_name ([proc_parameter[,...]])
  
      Any valid MySQL data type
  
  characteristic:
  
      LANGUAGE SQL
  
    | [NOT] DETERMINISTIC
  
    | { CONTAINS SQL | NO SQL | READS SQL DATA | MODIFIES SQL DATA }  --phpfensi.com
  
    | SQL SECURITY { DEFINER | INVOKER }
  
    | COMMENT 'string'
  
  routine_body:
  
      Valid SQL procedure statement or statements
  當我們看完以后,就可以開始寫一些簡單的存儲過程了,首先建立存儲過程, Create procedure(子程序)、Create function(函數),代碼如下:
 
  Create procedure sp_Name ([proc_parameter ])
  routine_body

  添加用戶的存儲過程,代碼如下:
 
  Delimiter //   
      Create procedure insertuser(in username varchar(20),in userpwd varchar(32))   
      Begin   
          Insert into welefen.user(Name,Pwd) values (username,md5(userpwd));   
      End   
      //
  驗證用戶的存儲過程,代碼如下:
 
  Delimiter //   
      Create procedure validateuser(in username varchar(20),out param1)   
      Begin    
          Select Pwd into param1 from welefen.user where Name=username;   
      End   
      //
  修改密碼的存儲過程,代碼如下:
 
  Delimiter //   
      Create procedure modifyPwd(in username varchar(20),in userpwd varchar(32))   
      Begin   
          Update welefen.user set Pwd=md5(userpwd) where Name=username;   
      End   
      //
  刪除用戶的存儲過程,代碼如下:
 
  Delimiter //   
      Create procedure deleteuser(in username varchar(20))  
  Begin   
           delete from welefen.user where Name=username;   
      End   
      //
  在客戶端,我們給出如下的程序,代碼如下:
 
  <?php   
       if (!mysql_connect("localhost","root","welefen")){    
           echo "連接數據庫失敗";   
      }   
       if (!mysql_select_db("welefen")){   
           echo "選擇數據庫表失敗<br>";   
      }   
         
      $insert_user=array("welefen","welefen");//這里的welefen分別為用戶名、密碼   
       if (mysql_query("call insertuser('$insert_user[0]','$insert_user[1]')")){   
           echo "添加用戶$insert_user[0]成功<br>";   
      }else {   
           echo "添加用戶$insert_user[0]失敗<br>";   
      }   
         
      $validate_user=array("welefen","welefen");//這里的welefen分別為用戶名、密碼   
      mysql_query("call validateuser('$validate_user[0]',@a)");   
      $Pwd=mysql_query("select @a");   
      $result=mysql_fetch_array($Pwd);   
       if ($result[0]==md5($validate_user[1])){   
           echo "用戶$validate_user[0]驗證正確<br>";   
      }else {   
           echo "用戶$validate_user[0]驗證錯誤<br>";   
      }   
         
      $modify_Pwd=array("welefen","weilefeng"); //welefen為用戶名weilefeng為新密碼   
       if (mysql_query("call modifyPwd('$modify_Pwd[0]','$modify_Pwd[1]')")){  
           echo "用戶$modigy_Pwd[0]的密碼修改成功<br>";   
      }else {
           echo "用戶$modigy_Pwd[0]的密碼修改失敗<br>";   
      }   
         
      $delete_user=array("welefen");           //welefen為用戶名   
       if (mysql_query("call deleteuser('$delete_user[0]')")){   
           echo "用戶$delete_user[0]刪除成功<br>";   
      }else {   
           echo "用戶$delete_user[0]刪除失敗<br>";   
      }   
  ?>
  這樣就完成了,php調用mysql的存儲過程,其實這些簡單的應用,就用不上存儲過程了,實際的應用是比這個復雜的多,可以看出,建立了mysql的存儲過程可以極大的減少了客服端的壓力,但是增加了數據庫服務的壓力,各種利弊得實際去衡量.

(編輯:武林網)

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 德清县| 互助| 徐州市| 昭觉县| 新巴尔虎左旗| 图们市| 江都市| 遂平县| 凌海市| 洪湖市| 西昌市| 临澧县| 深圳市| 忻城县| 临邑县| 阿城市| 紫阳县| 大足县| 张家界市| 滁州市| 托克逊县| 北碚区| 繁昌县| 尼勒克县| 潮安县| 常熟市| 上犹县| 镇坪县| 壤塘县| 汉沽区| 赞皇县| 营口市| 瑞丽市| 陇南市| 砚山县| 成武县| 陆川县| 涟水县| 志丹县| 股票| 万荣县|