一 代码
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;
<!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"> </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 /> 版权所有 <a href="http://www.mingrisoft.com/about.asp" class="a1">吉林省**科技有限公司</a>! 未经授权禁止复制或建立镜像!<br /> Copyright © <a href="http://www.mingrisoft.com" class="a1">www.mingrisoft.com</a>, 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>
二 运行结果
数据添加成功!
相关推荐
在PDO中调用存储过程有几种方法,这里我们将使用`prepare()`和`bindParam()`方法,这可以提高代码的可读性和安全性。以下是调用存储过程的代码: ```php $username = '123'; $userpsw = '123'; $xp_userlogon = $...
在这个存储过程中,我们定义了一个名为`tb_reg`的表,它包含四个字段:name、pwd、email和address。`INSERT`语句将这些输入参数插入到表中,完成用户注册的操作。 接下来,我们将使用PHP的PDO扩展来调用这个存储...
- 跨平台兼容性:确保在不同操作系统下,PDO的驱动配置正确,并且SQL Server存储过程与数据类型支持相同。 - 错误处理:在开发过程中应考虑到错误处理机制,比如捕获并处理异常,确保程序健壮性。 - 性能优化:在...
在这个存储过程中,我们为每个订单状态创建了一个独立的SELECT查询,并使用`INTO`关键字将查询结果赋值给对应的OUT参数。这样,当存储过程执行完毕后,调用者可以通过这些参数获取订单统计信息。 在PHP中调用这个...
在这个过程中,可以将之前设置的变量作为参数传递给存储过程。 ```php $res = mysql_query("call aa(@a)", $dblink); ``` #### 4. 获取结果 最后,如果存储过程有返回结果,可以通过`SELECT`语句查询这些结果。在...
PDO预处理语句与存储过程是PHP编程语言中用于数据库交互的重要技术。本文将介绍这两种技术的概念、使用方法以及它们在数据库编程中带来的好处。 首先,预处理语句(prepared statements)是SQL数据库中一种编译过的...
在这个存储过程中,`@@rowcount` 是一个系统变量,它会返回最后一条SQL语句影响的行数。在查询执行后,我们将这个值赋给 `@rowCount` 输出参数。 接下来,我们需要调用这个存储过程并接收输出参数的值: ```sql ...
PDO 详解 PDO(PHP Data Objects)是一种PHP扩展库,提供了一个统一的访问数据库的接口。...* 支持 stored procedures,能够调用存储过程 PDO是PHP中的一种强大且灵活的数据库访问接口,能够满足各种数据库操作需求。
- 两者都支持调用MySQL的存储过程。 7. **连接**: - PDO和mysqli的连接都非常简单,可以使用面向对象或面向过程的方式建立连接。 8. **对象映射**: - PDO和mysqli都支持将查询结果映射为对象,可以直接使用...
1. **对象字典构建**:对象字典是CANopen协议中用于存储节点配置信息的关键数据结构。在本例中,我们将通过定义索引和子索引来构建对象字典,便于通过SDO报文进行读写操作,实现对对象字典的灵活配置。对象字典的...
- 对敏感数据进行加密,尤其是在存储和传输过程中。 - 定期备份数据库,以防数据丢失或损坏。 6. **扩展与优化** - 考虑使用PDO_DBLIB的其他功能,如游标(允许双向遍历结果集)和持久连接(减少建立新连接的...
10. **编码支持**:PDO可以处理多种字符编码,确保数据在传输和存储过程中的正确性。 在压缩包中的“css”文件可能是指相关的样式文件,通常用于美化和布局PHP PDO应用的用户界面。然而,由于没有提供具体文件内容...
在登录过程中,通常需要检查用户提供的用户名(通常是电子邮件)和密码是否匹配数据库中的记录。使用PDO,我们可以执行查询并获取结果集,然后对结果进行验证。 ```php $stmt = $pdo->prepare('SELECT * FROM ...
从上面的描述中可以看出,PHP调用MySQL存储过程需要掌握MySQL存储过程的基础知识,同时需要熟悉PHP中MySQLi或PDO扩展的使用。存储过程能够将一系列的数据库操作封装起来,使得数据库逻辑更加独立,便于维护。在设计...
PDO(PHP数据对象) 是一个轻量级的、具有兼容接口的PHP数据连接拓展,是一个PHP官方的PECL库,随...由于PDO是在底层实现的统一的数据库操作接口,因而利用它能够实现更高级的数据库操作,比如存储过程的调度等。