30分钟学会用PHP写带数据库的简单通讯录第1/3页

yizhihongxing

下面是“30分钟学会用PHP写带数据库的简单通讯录”的完整攻略:

1. 准备工作

在开始之前,需要确保你的电脑已经安装了PHP和MySQL,并且能够在浏览器中访问到Web服务器,例如Apache。

2. 创建数据库

首先我们需要创建一个数据库存储通讯录信息,这里以MySQL为例。

  1. 打开MySQL命令行工具,输入以下命令创建一个名为“contact”的数据库:
CREATE DATABASE contact;
  1. 进入到刚才创建的数据库中,执行以下命令创建一个名为“user”的表格,用于存储用户信息:
USE contact;

CREATE TABLE user (
    id INT(11) NOT NULL AUTO_INCREMENT,
    name VARCHAR(50) NOT NULL,
    email VARCHAR(50) NOT NULL,
    phone VARCHAR(20) NOT NULL,
    PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

3. 编写PHP代码

接下来,我们需要编写PHP代码来实现对数据库中存储的用户信息的增删改查。

  1. 首先,创建一个名为“index.php”的文件,并在文件中添加以下代码来建立与数据库的连接:
<?php
$db_host = 'localhost';
$db_username = 'root';
$db_password = '';
$db_name = 'contact';
$dsn = "mysql:host=$db_host;dbname=$db_name;charset=utf8";

try {
    $pdo = new PDO($dsn, $db_username, $db_password);
} catch(PDOException $e) {
    echo '连接数据库失败!错误信息:'.$e->getMessage();
    exit;
}
?>
  1. 接着,添加以下代码来实现查询数据库中存储的用户信息,并使用HTML和CSS美化页面显示:
<?php
// 查询数据库中的用户信息
$stmt = $pdo->query('SELECT * FROM user');
$users = $stmt->fetchAll(PDO::FETCH_ASSOC);
?>

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>通讯录</title>
    <style>
        table {
            width: 600px;
        }
        th, td {
            padding: 10px;
            text-align: center;
            border: 1px solid black;
        }
    </style>
</head>
<body>
    <h1>通讯录</h1>
    <table>
        <tr>
            <th>ID</th>
            <th>姓名</th>
            <th>电子邮件</th>
            <th>电话号码</th>
        </tr>
        <?php foreach ($users as $user): ?>
            <tr>
                <td><?php echo $user['id']; ?></td>
                <td><?php echo $user['name']; ?></td>
                <td><?php echo $user['email']; ?></td>
                <td><?php echo $user['phone']; ?></td>
            </tr>
        <?php endforeach; ?>
    </table>
</body>
</html>
  1. 最后,添加以下代码来实现插入新用户信息并保存到数据库中:
<?php
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
    // 获取表单提交的数据
    $name = $_POST['name'];
    $email = $_POST['email'];
    $phone = $_POST['phone'];

    // 将新的用户信息插入数据库
    $stmt = $pdo->prepare('INSERT INTO user (name, email, phone) VALUES (?, ?, ?)');
    $stmt->execute([$name, $email, $phone]);
}
?>

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>通讯录</title>
    <style>
        table {
            width: 600px;
        }
        th, td {
            padding: 10px;
            text-align: center;
            border: 1px solid black;
        }
    </style>
</head>
<body>
    <h1>通讯录</h1>
    <form method="post">
        <label for="name">姓名:</label>
        <input type="text" name="name" id="name">
        <label for="email">电子邮件:</label>
        <input type="text" name="email" id="email">
        <label for="phone">电话号码:</label>
        <input type="text" name="phone" id="phone">
        <input type="submit" value="添加">
    </form>
    <table>
        <tr>
            <th>ID</th>
            <th>姓名</th>
            <th>电子邮件</th>
            <th>电话号码</th>
        </tr>
        <?php foreach ($users as $user): ?>
            <tr>
                <td><?php echo $user['id']; ?></td>
                <td><?php echo $user['name']; ?></td>
                <td><?php echo $user['email']; ?></td>
                <td><?php echo $user['phone']; ?></td>
            </tr>
        <?php endforeach; ?>
    </table>
</body>
</html>

以上代码实现了读取数据库中的用户信息,并将信息展示在页面上,同时用户还能在界面上添加新的用户并保存到数据库中。如果用户输入有误,例如留空或者格式不正确等,需要添加相应的表单验证功能以确保数据的准确性。

示例一:

在数据库中插入一条数据,包括字段“name”为“张三”,“email”为“zhangsan@example.com”,“phone”为“13812345678”。

执行以下代码:

INSERT INTO user (name, email, phone) VALUES ('张三', 'zhangsan@example.com', '13812345678');

示例二:

删除数据库中id为1的数据。

执行以下代码:

DELETE FROM user WHERE id = 1;

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:30分钟学会用PHP写带数据库的简单通讯录第1/3页 - Python技术站

(0)
上一篇 2023年5月21日
下一篇 2023年5月21日

相关文章

  • Windows Server 2012 R2添加Windows Server Backup 功能

    下面是详细的Windows Server 2012 R2添加Windows Server Backup功能的完整攻略: 1. 安装Windows Server Backup 首先,切换到Windows Server 2012 R2的服务器管理器界面,并遵循下面的步骤安装Windows Server Backup: 单击左侧窗格中的“管理”菜单,然后单击“添加…

    database 2023年5月21日
    00
  • 详解Mysql case then使用

    MySQL中的CASE语句可以用于在SELECT、UPDATE、DELETE或SET语句中进行条件判断。在CASE语句中,我们可以使用THEN或WHEN关键字来定义条件和结果。例如,条件满足时,可以返回不同的值,或者执行不同的操作。 下面我们来详细讲解使用MySQL的CASE语句进行条件判断的完整攻略。 1. 基本语法 使用MySQL的CASE语句进行条件判…

    database 2023年5月22日
    00
  • Oracle和Mysql语法异同整理笔记

    @ 目录 (1) 模糊匹配 (2) 删除数据 (3) 时间函数 (4) 关键字问题 (5) 递归查询 (6) 排序问题 (7) 空值返回0 (8) 取最大值 (9) 列转换函数 (10) 类型转行函数 最近在做项目迁移,Oracle版本的迁到Mysql版本,遇到有些oracle的函数,mysql并没有,所以就只好想自定义函数或者找到替换函数的方法进行改造。 …

    MySQL 2023年4月13日
    00
  • 如何使用Python查询包含一个列表中任意一个值的所有行?

    以下是如何使用Python查询包含一个列表中任意一个值的所有行的完整使用攻略。 步骤1:导入模块 在Python中,我们需要导入相应的模块来连接数据库和执行查询操作。以下是导入mysql-connector-python模块的基本语法: import mysql.connector 以下是导入psycopg2模块的基本语法: import psycopg2 …

    python 2023年5月12日
    00
  • 安装SQL server 提示重新启动计算机失败怎么解决?

    安装SQL Server时出现重新启动计算机失败的问题,这通常是由于以下原因之一所致: 已经打开了另一个程序或服务,正在使用文件。 某些Windows更新在安装过程中需要重新启动系统,但它们可能会在后台安装,而没有向用户显示通知。 系统出现故障,因此需要重新启动。 以下是解决这个问题的一些方法: 方法一:关闭所有与SQL Server相关的进程 在安装SQL…

    database 2023年5月21日
    00
  • centos6搭建gitlab的方法步骤

    下面就是”CentOS 6 搭建 Gitlab 的方法步骤”的完整攻略: 准备工作 在开始之前,我们需要安装并配置下列软件: git postfix curl Openssl-devel rpm-build ruby rubygems sqlite python-devel libicu-devel 我们可以通过以下命令来安装: yum install -y…

    database 2023年5月22日
    00
  • MYSQL 优化常用方法

    MYSQL 优化常用方法 MYSQL 是一种开源的关系型数据库管理系统,被广泛应用于各种规模的网站和应用程序。优化 MYSQL 数据库的性能是每个 MYSQL 数据库管理员所必需的技能之一。下面是 MYSQL 优化常用方法的完整攻略: 1. 使用索引 索引是常用的 MYSQL 优化方法之一。合理使用索引可以加快数据查询和数据检索的速度,提高数据查询的效率。通…

    database 2023年5月19日
    00
  • linux c语言操作数据库(连接sqlite数据库)

    下面是关于连接SQLite数据库的C语言操作攻略的详细讲解。 1.安装SQLite以及其开发库 在Ubuntu和Debian发行版中通过APT包管理器可以很简单地安装SQLite和其开发库(指定版本为3.22.0): sudo apt-get install sqlite3 libsqlite3-dev=3.22.0-1ubuntu0.3 2.连接SQLit…

    database 2023年5月21日
    00
合作推广
合作推广
分享本页
返回顶部