PHP之七_PHP编程访问MySQL数据库

  PHP之七_PHP编程访问MySQL数据库


  在前面的两个小节中,我们分别介绍了PHP的表单数据接收,和MySQL数据库的表结构设计。

  在本小节中,将介绍PHP编程访问MySQL数据库。

  在学习完这个小节后,我们就可以把表单提交过来的用户注册信息保存到MySQL数据库中了。


  一、PHP中常用的MySQL操作函数

  通常要完成一个数据库的操作,需要按如下步骤来执行:

  × 连接MySQL数据库服务器

  × 选择数据库

  × 向MySQL数据库发送SQL语句

  × 关闭数据库连接


  1. mysql_connect()

  这个函数用于连接MySQL数据库服务器。mysql_connect() 函数打开的是非持久的MySQL连接,所谓的非持久,就是数据库连接在脚本执行完成后会自动关闭。

  语法:

    mysql_connect(server, user, pwd);

  参数说明:

    server:服务器,通常格式是:“服务器名或IP:端口号”,例如:“localhost:3306”,也可以直接写“localhost”。

    user:用户,在测试中我们使用root用户,但在实际应用中,应该专门创建一个用户,因为root用户是超级用户,权限过大。

    pwd:密码,在WAMP软件中,root用户的密码为空。在实际应用中,应修改root用户的密码。

  返回值:

    如果连接成功,返回一个数据库连接。如果连接失败,返回false。


  2. mysql_select_db()

  这个函数用于选择数据库。

  前一节中,我们说到,每一个应用程序的数据应保存在一个数据库中。

  所以连接上MySQL数据库服务器后,应先选择数据库。

  语法:

    mysql_select_db(database, connection);

  参数:

    database:要选择的数据库名。

    connection:MySQL数据库连接。

  返回值:

    如果选择成功,返回true。如果连接失败,返回false。


  示例:

    $con = mysql_connect('localhost', 'root', '');

    mysql_select_db('testdb', $con);


  3. mysql_query()

  这个函数用于执行SQL语句。

  要维护表中的数据,只能通过SQL语句来完成。


  ========================================

  SQL语句有增、删、改、查4种。

  这里简单地示范一下。

  假设有一个示例表,名为TBL_BOOK(图书表),有4列:BOOK_ID(主键、自增长)、BOOK_NAME(图书名称、字符型)、BOOK_PRICE(图书价格、浮点型)、BUY_DATE(购买日期、日期型)。

  增:INSERT INTO TBL_BOOK(BOOK_NAME, BOOK_PRICE, BUY_DATE) VALUES('十万个为什么', 50.0, now());

  删:DELETE FROM TBL_BOOK WHERE BOOK_ID=1;

  改:UPDATE TBL_BOOK SET BOOK_NAME='十一万个为什么', BUY_DATE=now() WHERE BOOK_ID=1;

  查:SELECT * FROM TBL_BOOK;


  注:新增时,自增长列不需要赋值。now()函数取得系统当前时间。

  ========================================


  mysql_query()函数

  语法:

    mysql_query(query, connection);

  参数:

    query:需要执行的SQL语句。

    connection:MySQL数据库连接。

  返回值:

    如果SQL语句是“SELECT”语句,查询成功,则返回查询的结果集,SQL语句执行失败,则返回false。

    如果SQL语句是增、删、改语句,执行成功,返回true,执行失败,返回false。


  4. mysql_close()

  这个函数用于关闭数据库连接。这个操作不是必需的,因为非持久的数据库连接在脚本执行完成后会自动关闭。

  语法:

    mysql_close(connection);

  参数:

    connection:MySQL数据库连接。

  返回值:

    执行成功返回true,执行失败返回false。


  二、完整代码

<?php
$name = $_POST["name"];
$pass = $_POST["pass"];
$pass2 = $_POST["pass2"];
$email = $_POST["email"];
$sex = $_POST["sex"];
$love = $_POST["love"];
$love2 = implode(',', $love);

$con = mysql_connect('localhost', 'root', '')
  or die('连接数据库错误:' . mysql_error());

mysql_select_db('testdb', $con)
  or die('选择数据库错误:' . mysql_error());

$sql="insert into tbl_user(user_name, pass, email, sex, love, reg_date) values('$name', '$pass', '$email', '$sex', '$love2', now())";
mysql_query("set names utf8");
mysql_query($sql)
  or die('SQL语句错误:' . mysql_error());;

echo '注册成功!';

mysql_close($con);
?>

  在这段代码中,前半部分是接收表单数据。

  然后首先连接数据库,其次是选择数据库,最后向数据库发送一条INSERT指令。

  有几点说明一下:

  1. 在每个操作数据库的函数后,都加上or die()语句,可以在操作数据库出错时,中止脚本的执行。

  2. 为了防止乱码,在发送SQL指令前,先发送一条:set names utf8,可以保证编码的正确性。


  三、测试

  在浏览器中输入:http://localhost/demo2.html



  当提示“保存成功!”时,打开phpMyAdmin界面,可以看到tbl_user表中已经多了一条记录:



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值