欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

PHP实现PDO操作mysql存储过程示例

程序员文章站 2023-11-09 12:46:10
本文实例讲述了php实现pdo操作mysql存储过程。分享给大家供大家参考,具体如下: 一 代码 sql语句: create procedure pro_re...

本文实例讲述了php实现pdo操作mysql存储过程。分享给大家供大家参考,具体如下:

一 代码

sql语句:

create procedure pro_reg (in nc varchar(80), in pwd varchar(80), in email varchar(80),in address varchar(50))
begin
insert into tb_reg (name, pwd ,email ,address) values (nc, pwd, email, address);
end;

index.php:

<!doctype html public "-//w3c//dtd xhtml 1.0 transitional//en"
"http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>用户注册</title>
<link rel="stylesheet" type="text/css" href="style.css" rel="external nofollow" >
</head>
<script language="javascript">
 function chkinput(form){
  if(form.nc.value==""){
     alert("请输入用户昵称!");
     form.nc.select();
     return(false);
    }
  if(form.pwd.value==""){
     alert("请输入注册密码!");
     form.pwd.select();
     return(false);
    }
     if(form.email.value==""){
     alert("请输入e-mail地址!");
     form.email.select();
     return(false);
    }
    if(form.address.value==""){
     alert("请输入家庭地址!");
     form.address.select();
     return(false);
    }
  return(true);
 }
</script>
<body>
<table width="200" border="0" align="center" cellpadding="0" cellspacing="0">
 <tr>
  <td><img src="images/banner.gif" width="500" height="65" /></td>
 </tr>
</table>
<table width="500" height="10" border="0" align="center" cellpadding="0" cellspacing="0">
 <tr>
  <td></td>
 </tr>
</table>
<table width="500" border="0" align="center" cellpadding="0" cellspacing="0">
 <tr>
  <td bgcolor="#1170ff"><table width="500" height="157" border="0" align="center" cellpadding="0" cellspacing="1">
   <form name="form1" method="post" action="index.php" onsubmit="return chkinput(this)">
     <tr>
    <td height="25" colspan="2" bgcolor="#b5d3ff"><div align="center">用户注册</div></td>
   </tr>
   <tr>
    <td width="150" height="25" bgcolor="#ffffff"><div align="center">用户昵称:</div></td>
    <td width="347" bgcolor="#ffffff"> <input type="text" name="nc" class="inputcss" size="25"></td>
   </tr>
   <tr>
    <td height="25" bgcolor="#ffffff"><div align="center">注册密码:</div></td>
    <td height="25" bgcolor="#ffffff"> <input type="password" name="pwd" class="inputcss" size="25"></td>
   </tr>
   <tr>
    <td height="25" bgcolor="#ffffff"><div align="center">e-mail:</div></td>
    <td height="25" bgcolor="#ffffff"> <input type="text" name="email" class="inputcss" size="25"></td>
   </tr>
   <tr>
    <td height="25" bgcolor="#ffffff"><div align="center">家庭住址:</div></td>
    <td height="25" bgcolor="#ffffff"> <input type="text" name="address" class="inputcss" size="25"></td>
   </tr>
   <tr>
    <td height="25" colspan="2" bgcolor="#ffffff"><div align="center"><input type="submit" name="submit" value="注册" class="buttoncss">  <input type="reset" value="重写" class="buttoncss"></div></td>
   </tr>
     </form>
  </table></td>
 </tr>
</table>
<table width="600" height="80" border="0" align="center" cellpadding="0" cellspacing="0">
 <tr>
  <td><div align="center"><br />
    版权所有 吉林省**科技有限公司! 未经授权禁止复制或建立镜像!<br />
   copyright © , all rights reserved! <br />
   <br />
   建议您在大于1024*768的分辨率下使用 </div></td>
 </tr>
</table>
<?php
 if($_post['submit']!=""){
     $dbms='mysql'; //数据库类型 ,对于开发者来说,使用不同的数据库,只要改这个,不用记住那么多的函数
    $host='localhost'; //数据库主机名
    $dbname='db_database15'; //使用的数据库
    $user='root'; //数据库连接用户名
    $pass='root'; //对应的密码
    $dsn="$dbms:host=$host;dbname=$dbname";
    try {
      $pdo = new pdo($dsn, $user, $pass); //初始化一个pdo对象,就是创建了数据库连接对象$pdo
        $pdo->query("set names utf8"); //设置数据库编码格式
        $pdo->setattribute(pdo::attr_errmode,pdo::errmode_exception);
         $nc=$_post['nc'];
      $pwd=md5($_post['pwd']);
      $email=$_post['email'];
      $address=$_post['address'];
        $query="call pro_reg('$nc','$pwd','$email','$address')";
        $result=$pdo->prepare($query);
        if($result->execute()){
            echo "数据添加成功!";
        }else{
            echo "数据添加失败!";
        }
    } catch (pdoexception $e) {
      echo 'pdo exception caught.';
        echo 'error with the database:<br/>';
        echo 'sql query: '.$query;
        echo '<pre>';
      echo "error: " . $e->getmessage(). "<br/>";
        echo "code: " . $e->getcode(). "<br/>";
        echo "file: " . $e->getfile(). "<br/>";
        echo "line: " . $e->getline(). "<br/>";
        echo "trace: " . $e->gettraceasstring(). "<br/>";
        echo '</pre>';
    }
 }
?>
</body>
</html>

二 运行结果

数据添加成功!

更多关于php相关内容感兴趣的读者可查看本站专题:《php基于pdo操作数据库技巧总结》、《php+oracle数据库程序设计技巧总结》、《php+mongodb数据库操作技巧大全》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总

希望本文所述对大家php程序设计有所帮助。