美文网首页
PHP快速入门之PHP与MYSQL(二)

PHP快速入门之PHP与MYSQL(二)

作者: 杰奎琳子 | 来源:发表于2020-08-28 05:04 被阅读0次

    9.1案例介绍

    实现对数据库的增删改查。

    连接数据库完成以下表格以及相应的业务。

    9.2分析案例 

    1、连接数据库。

    2、展示数据库数据:通过select查询数据库,获取数据库记录展示到html表格中。

    3、修改数据库数据:通过id查询数据库中要修改的数据,展示到表单中。

    4、保存修改数据:修改表格中数据,点击提交,将表单提交的数据通过update保存到数据库中。

    5、删除数据:通过id查询数据库中要删除的数据,点击删除通过delete删除数据库对应的数据。

    9.3核心知识

    PHP与MYSQL数据库的连接和基本的增删改查操作

    9.4知识讲解

    9.4.1检索查询结果

    mysqli_fetch_array --  从结果集中取得一行作为关联数组,或数字数组,或二者兼有 

    语法格式:array mysqli_fetch_array (查询结果指针[,数组储存型态常数])

    返回类型:返回根据从结果集取得的行生成的数组,如果没有更多行则返回 FALSE。

    说明:mysqli_fetch_array() 是 mysqli_fetch_row()的扩展版本。除了将数据以数字索引方式储存在数组中之外,还可以将数据作为关联索引储存,用字段名作为键名。 数组储存型态常数共有三种:

    —— MYSQLI_ASSOC: 关联数组---->等价于mysqli_fetch_assoc()

    —— MYSQLI_NUM: 索引数组

    —— MYSQLI_BOTH: 两者共用(默认值)

    <?php

      $Link_State = mysqli_connect("localhost", "root", "","mysql");

    //定义MySQL指令参数

    $SQL_String = "SELECT * from user";//选取user表

    //开启资料库,传递查询指令

      $Send = mysqli_query($Link_State,$SQL_String);

    //取得所在栏位整笔资讯

      $Field_Data = mysqli_fetch_array($Send, SQL_BOTH);

    //利用foreach叙述输出阵列

      foreach ($Field_Data as $name=>$value)

         echo "$name : $value <br>";

    ?>

    9.4.2取得记录

    mysqli_affected_rows( )

    函数可通过资料表传递回来的查询结果指针,来取得其中所有行数。用法:

    mysqli_affected_rows(数据库连接)取得结果集中行的数目。

    <?php

    $Link_State = mysqli_connect("localhost", "root", "","mysql"); //定义MySQL指令参数

    $SQL_String = "SELECT * from user";//选取user表单

    //开启资料库,传递查询指令    

    $Send = mysqli_query($Link_State,$SQL_String);

        if($row=mysqli_affected_rows($Link_State)){

    echo “sql执行成功!“;

    }else{

            echo “sql语句执行失败!”;

        }

    ?>

    9.4.3关闭数据库连接

    通过调用如下语句,可以释放结果集

    mysqli_free_result -- 释放结果内存

    格式:bool mysqli_free_result ( resource result )

    mysqli_free_result() 仅需要在考虑到返回很大的结果集时会占用多少内存时调用。在脚本结束后所有关联的内存都会被自动释放。 关闭数据库连接

    mysqli_close -- 关闭 MySQL 连接

    格式:bool mysqli_close ( [resource link_identifier] )

    mysqli_close() 关闭指定的连接标识所关联的到 MySQL 服务器的连接。如果没有指定 link_identifier,则关闭上一个打开的连接。通常不需要使用 mysqli_close(),因为已打开的非持久连接会在脚本执行完毕后自动关闭。

    <?php

    //连接,选择数据库$link = mysqli_connect(‘mysql_host’, ‘mysql_user’, ‘mysql_password’,‘my_database’)    or die(‘Could not connect: ‘ . mysqli_error());mysqli_select_db(‘my_database’) or die(‘Could not select database’);

    //执行 SQL 查询$query = ‘SELECT * FROM my_table’;$result = mysqli_query($query) or die(‘Query failed: ‘ . mysqli_error());……

    mysqli_free_result($result); //释放结果集

    mysqli_close($link); //关闭连接

    ?>

    9.4.4错误处理函数

    当mysql操作发生错误时,PHP可以调用内建的错误处理函数,来传回进一步的错误资讯,错误处理函数有mysqli_connect_error()与mysqli_error($link)。

    mysqli_connect_error()--返回连接数据库时的错误信息。

    <?php

    //连接数据库$link = @mysqli_connect('localhost','root','','class');if(!$link) {//连接错误    die(mysqli_connect_error());}

    ?>

    mysqli_error --  返回上一个 MySQL 操作产生的文本错误信息 

    string mysqli_error ( [resource link_identifier] )

    <?php

    $sql = "select * from `student`";if(!$rs = mysqli_query($link,$sql)){    //sql语句执行错误    die(mysqli_error($link));}

    ?>

    9.5知识运用

    在以后的项目训练中,我们将频繁的使用此类技术,这些东西是不可缺少的。

    相关文章

      网友评论

          本文标题:PHP快速入门之PHP与MYSQL(二)

          本文链接:https://www.haomeiwen.com/subject/wfuejktx.html