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


Posted in PHP onFebruary 13, 2019

本文实例讲述了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 相关文章推荐
社区(php&amp;&amp;mysql)四
Oct 09 PHP
PHP文件下载类
Dec 06 PHP
php 智能404跳转代码,适合换域名没改变目录的网站
Jun 04 PHP
mcrypt启用 加密以及解密过程详细解析
Aug 07 PHP
php 购物车完整实现代码
Jun 05 PHP
php删除数组中重复元素的方法
Dec 22 PHP
初识PHP中的Swoole
Apr 05 PHP
php生成二维码图片方法汇总
Dec 17 PHP
PHP使用preg_split()分割特殊字符(元字符等)的方法分析
Feb 04 PHP
thinkphp ajaxfileupload实现异步上传图片的示例
Aug 28 PHP
laravel解决迁移文件一次删除创建字段报错的问题
Oct 24 PHP
PHP字符串与数组处理函数用法小结
Jan 07 PHP
在PHP中输出JS语句以及乱码问题的解决方案
Feb 13 #PHP
PHP实现通过文本文件统计页面访问量功能示例
Feb 13 #PHP
Windows上php5.6操作mongodb数据库示例【配置、连接、获取实例】
Feb 13 #PHP
PHP封装的简单连接MongoDB类示例
Feb 13 #PHP
总结PHP中初始化空数组的最佳方法
Feb 13 #PHP
PHP convert_cyr_string()函数讲解
Feb 13 #PHP
php如何比较两个浮点数是否相等详解
Feb 12 #PHP
You might like
PHP编程与应用
2006/10/09 PHP
在PHP站点的页面上添加Facebook评论插件的实例教程
2016/01/08 PHP
详解PHP的抽象类和抽象方法以及接口总结
2019/03/15 PHP
TP框架实现上传一张图片和批量上传图片的方法分析
2020/04/23 PHP
JQuery 学习技巧总结
2010/05/21 Javascript
js 弹出菜单/窗口效果
2011/10/30 Javascript
js 动态为textbox添加下拉框数据源的方法
2014/04/24 Javascript
javascript+HTML5的Canvas实现Lab单车动画效果
2015/08/07 Javascript
分享12个实用的jQuery代码片段
2016/03/09 Javascript
JavaScript数组去重的两种方法推荐
2016/04/05 Javascript
js封装成插件_Canvas统计图插件编写实例
2017/09/12 Javascript
JavaScript常用截取字符串的三种方式用法区别实例解析
2018/05/15 Javascript
Mint UI组件库CheckList使用及踩坑总结
2018/12/20 Javascript
koa2服务端使用jwt进行鉴权及路由权限分发的流程分析
2019/07/22 Javascript
Vue 中可以定义组件模版的几种方式
2019/08/06 Javascript
vue elementUI 表单校验的实现代码(多层嵌套)
2019/11/06 Javascript
JavaScript计算出两个数的差值
2020/03/19 Javascript
[47:38]Optic vs VGJ.S 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/20 DOTA
pygame游戏之旅 按钮上添加文字的方法
2018/11/21 Python
搞清楚 Python traceback的具体使用方法
2019/05/13 Python
win10下python3.8的PIL库安装过程
2020/06/08 Python
Keras官方中文文档:性能评估Metrices详解
2020/06/15 Python
python实现npy格式文件转换为txt文件操作
2020/07/01 Python
pycharm2020.2 配置使用的方法详解
2020/09/16 Python
阿迪达斯俄罗斯官方商城:adidas俄罗斯
2017/03/08 全球购物
科颜氏香港官方网店:Kiehl’s香港
2021/03/07 全球购物
幼儿园元旦家长感言
2014/02/27 职场文书
2014三八妇女节活动总结范文四篇
2014/03/09 职场文书
父母对孩子说的话
2014/04/12 职场文书
2015出纳试用期工作总结
2014/12/12 职场文书
英语专业毕业论文答辩开场白
2015/05/27 职场文书
2015年网络舆情工作总结
2015/07/24 职场文书
大学生活感想
2015/08/10 职场文书
mybatis中sql语句CDATA标签的用法说明
2021/06/30 Java/Android
Java使用jmeter进行压力测试
2021/07/09 Java/Android
Python OpenCV超详细讲解调整大小与图像操作的实现
2022/04/02 Python