PHP编程语言手册六:PHP和MySQL的结合

还是玩sword表吧

数据库表.png

1.连接MySQL
连接成功.png
<?php
$host = "localhost";
$user = "root";
$pwd = "----";
$conn = mysqli_connect($host, $user, $pwd);

// 检测连接
if ($conn->connect_error) {
    die("连接失败: " . $conn->connect_error);
}
echo "连接成功";
$conn->close();//关闭数据库
复制代码

2.查询数据库并封装实体类

连上数据库然后就是SQL的领域了

查询数据库并封装实体类.png
<?php
include './Sword.php';
$host = "localhost";
$user = "root";
$pwd = "----";
$conn = mysqli_connect($host, $user, $pwd);
// 检测连接
if ($conn->connect_error) {
    die("连接失败: " . $conn->connect_error);
}
echo "连接成功";
mysqli_select_db($conn, "zoom");//选择数据库
$sql = "SELECT * FROM sword";//sql语句
$result = $conn->query($sql);
$swords = array();
if ($result->num_rows > 0) {
    // 输出数据
    while ($row = $result->fetch_assoc()) {
        $sword = new Sword(
            $row["id"],
            $row["name"],
            $row["atk"],
            $row["hit"],
            $row["crit"],
            $row["attr_id"],
            $row["type_id"]
        );
        array_push($swords, $sword);
    }
}
复制代码

3.将查询的结果转化为json
转化为json.png
echo json_encode($swords);
复制代码

也可以将结果输出成表格

列表.png
function createTable($content, $css = "border='1' cellspacing='0' cellpadding='0' width='80%'"){
    $row = count($content);
    $table = "<table $css >";
    for ($i = 0; $i < $row; $i++) {//for循环控制
        $table .= "<tr/>";
        $value = $content[$i];
        $table .= "<td >$value->id</td>";
        $table .= "<td >$value->name</td>";
        $table .= "<td >$value->atk</td>";
        $table .= "<td >$value->hit</td>";
        $table .= "<td >$value->crit</td>";
        $table .= "<td >$value->attr_id</td>";
        $table .= "<td >$value->type_id</td>";
        $table .= "</tr>";
    }
    $table .= "</table>";
    return $table;
}
复制代码

4.创建数据库
数据库创建成功.png
// 创建数据库
$sql = "CREATE DATABASE php";
echo $conn->query($sql) ? "数据库创建成功" : "数据库创建失败" . $conn->error;
复制代码

5.创建表
创建表.png
mysqli_select_db($conn, "php");//选择数据库
$sql="create table sword
(
  id      smallint(5) unsigned auto_increment
    primary key,
  name    varchar(32)                       not null,
  atk     smallint(5) unsigned              not null,
  hit     smallint(5) unsigned              not null,
  crit    smallint(5) unsigned default '10' null,
  attr_id smallint(5) unsigned              not null,
  type_id smallint(5) unsigned              not null
)";
echo $conn->query($sql) ? "sword创建成功" : "sword创建失败" . $conn->error;
复制代码

另外增删改查的操作关键是sql语句,本文就不引申了

作者:张风捷特烈
链接:https://juejin.im/post/5c8a19d75188257dd56e7d91
来源:掘金
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

THE END