PHP操作数据库

通过代码操作数据库

步骤:

1>链接数据库:需要链接的服务器,用户名和密码

2>选择哪个数据库

3>设置字符集

4>向对应的数据库插入、修改、更新、查询数据的相关命令

5>执行命令

<?php
   // 链接数据库:需要链接的服务器,用户名和密码
   $connect= mysqli_connect("localhost","root","keyeking");
// 选择哪个数据库
   mysqli_select_db($connect,"study");
// 设置字符集
  mysqli_set_charset($connect,"utf8");
// 向对应的数据库插入数据
$sql="INSERT INTO form VALUE('10','麻辣香锅',45,'男')";
// 执行命令
   mysqli_query($connect,$sql);
?> 

此时我们打开数据库就回发现多了一条数据

PHP操作数据库

此时我们每一次请求页面的时候都会向数据库增加一条数据

mysqli_query() 函数执行一条 MySQL 查询

此时我们再观察一下发送请求后究竟干了些什么?

PHP操作数据库

 

 

 接下来我们要查询现在数据库中已有的数据

<?php
   // 链接数据库:需要链接的服务器,用户名和密码
   $connect= mysqli_connect("localhost","root","keyeking");
// 选择哪个数据库
   mysqli_select_db($connect,"study");
// 设置字符集
  mysqli_set_charset($connect,"utf8");
// 向对应的数据库插入数据
$sql="SELECT * FROM form";
// 执行命令
   $result=mysqli_query($connect,$sql);
   echo $result;
?> 

此时我们输出这个$result是报错的,因为我们使用的echo和print_r都是不合法的,因为本身的返回结果不是基本类型值,也不是数组

PHP操作数据库

 

 

 所以我们要将结果转换为数组

mysqli_fetch_array()函数从结果集中取得一行作为关联数组,或数字数组,或二者兼有
<?php
   // 链接数据库:需要链接的服务器,用户名和密码
   $connect= mysqli_connect("localhost","root","keyeking");
// 选择哪个数据库
   mysqli_select_db($connect,"study");
// 设置字符集
  mysqli_set_charset($connect,"utf8");
// 向对应的数据库插入数据
$sql="SELECT * FROM form";
// 执行命令
   $result=mysqli_query($connect,$sql);
  $end=mysqli_fetch_array($result);
  print_r($end);
  echo "<br/>";
?> 

PHP操作数据库

 

 

 我们想要打印的是所有的数组内容,但是返回的却是一条数据,返回执行上面的命令后发现

$sql="SELECT * FROM form";
// 执行命令
   $result=mysqli_query($connect,$sql);
  $end=mysqli_fetch_array($result);
  print_r($end);
  echo "<br/>";
  $end=mysqli_fetch_array($result);
  print_r($end);
  echo "<br/>";
  $end=mysqli_fetch_array($result);
  print_r($end);
  echo "<br/>";
  $end=mysqli_fetch_array($result);
  print_r($end);
  echo "<br/>";
  $end=mysqli_fetch_array($result);
  print_r($end);
  echo "<br/>";
  $end=mysqli_fetch_array($result);
  print_r($end);
  echo "<br/>";

PHP操作数据库

 

 

 

此时问题来了,如果我们的数据更多怎么办?

我们可以用while循环来遍历所有的数据

$result=mysqli_query($connect,$sql);
while($end=mysqli_fetch_array($result)){
    print_r($end);
    echo "<br/>";
   }
  
?> 

 PHP操作数据库

 数据可视化小案例-数据渲染表格

 

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        table,td{
            border-collapse: collapse;
            border: 1px solid #000;
        }

    </style>
</head>
<body>
   <?php
      // 链接数据库:需要链接的服务器,用户名和密码
      $connect= mysqli_connect("localhost","root","keyeking");
      // 选择哪个数据库
         mysqli_select_db($connect,"study");
      // 设置字符集
        mysqli_set_charset($connect,"utf8");
      // 向对应的数据库插入数据
      $sql="SELECT * FROM form";
      // 执行命令
      $result=mysqli_query($connect,$sql);
      //将查询的结果转换成数组
      $end=mysqli_fetch_array($result);
   ?>
   <table>
       <tr>
           <td>id</td>
           <td>姓名</td>
           <td>年龄</td>
           <td>性别</td>
       </tr>
       <?php while( $end=mysqli_fetch_array($result)) {?>
        <tr>
            <td>
                <?php print_r($end["id"]) ?>
            </td>               
            <td>
                <?php print_r($end["name"]) ?>
            </td>     
            <td>
                <?php print_r($end["age"]) ?>
            </td>     
            <td>
                <?php print_r($end["sex"]) ?>
            </td>
        </tr>
      <?php }?>

   </table>
</body>
</html>

PHP操作数据库

 

 PHP操作数据库

上一篇:树莓派安装apache php 无法使用mysqli函数


下一篇:thymeleaf 传递数据到js变量