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

下面是“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日

相关文章

  • MYSQL 的10大经典优化案例场景实战

    MYSQL的10大经典优化案例场景实战 MYSQL是当前最流行的关系型数据库之一,拥有良好的可扩展性和可靠性,但在使用过程中仍然会遇到一些性能瓶颈和问题。为了提高MYSQL的性能,以下是MYSQL的10大经典优化案例场景实战的完整攻略。 1.合理设计表结构和索引 在使用MYSQL前,要优先重视合理的表结构和索引设计。合理的表结构设计有利于减少冗余字段,避免频…

    database 2023年5月19日
    00
  • MyBatis-plus批量插入的通用方法使用

    MyBatis-plus是MyBatis的增强工具,在使MyBatis更加易用和便捷的同时,也加强了MyBatis的一些功能。其中,批量插入是MyBatis-plus中的一个重要功能之一。本篇攻略将针对MyBatis-plus批量插入的通用方法进行详细的讲解,包括必要的代码实现和示例说明。 准备工作 在使用MyBatis-plus批量插入的功能之前,我们需要…

    database 2023年5月21日
    00
  • 了不起的node.js读书笔记之mongodb数据库交互

    了不起的node.js读书笔记之mongodb数据库交互 简介 本文主要介绍如何通过node.js使用mongodb数据库,并针对其中的常见操作进行详细说明。读者需要有一定的node.js和mongodb基础才能更好地理解本文内容。 安装mongodb驱动程序 首先需要安装mongodb驱动程序,使用npm安装即可: npm install mongodb …

    database 2023年5月22日
    00
  • Mybatis Plus查询时sql字段名大小写报错的解决

    针对”Mybatis Plus查询时sql字段名大小写报错的解决”这个问题,我提供以下完整攻略: 1. 问题描述 在使用MyBatis Plus进行查询时,如果实体类的属性与数据库表字段的大小写不一致,会导致查询失败,抛出Invalid bound statement (not found)的异常信息。 2. 原因分析 MyBatis Plus是通过反射获取…

    database 2023年5月18日
    00
  • 简单了解mysql mycat 中间件

    MySQL Mycat是一个开源的数据库中间件,常用于解决MySQL数据库的高可用性和高性能问题。下面是了解Mycat的完整攻略: 一、MySQL Mycat的基本介绍 MySQL Mycat是一款开源的数据库中间件,其主要功能为:分库分表、读写分离、自动故障切换、数据缓存等,其具备以下优点: 提供分布式数据库的高可用性、高并发、高容错能力。 在多线程、网络…

    database 2023年5月22日
    00
  • Python操作MySQL数据库的示例代码

    下面是使用Python操作MySQL数据库的示例代码的完整攻略。 准备工作 在Python中操作MySQL数据库,需要先安装MySQL数据库驱动程序。常用的有两个库:pymysql和mysql-connector-python。这里以pymysql为例,安装命令如下: pip install pymysql 连接MySQL数据库 首先,需要使用Python代…

    database 2023年5月22日
    00
  • linux环境下卸载oracle 11g的过程

    下面是在Linux环境下卸载Oracle 11g的完整攻略: 准备工作 在卸载Oracle 11g之前,我们需要执行以下步骤: 停止Oracle数据库以及相关服务 备份数据库和其他必要的文件 确保你有管理员权限 卸载Oracle 11g 步骤 1:卸载Oracle数据库软件 在卸载Oracle 11g之前,需要先卸载Oracle数据库软件。可以使用以下命令:…

    database 2023年5月22日
    00
  • Oracle 11g+windows 环境下Ecology7系统安装过程

    Oracle 11g+Windows环境下Ecology7系统安装过程 1. 准备工作 在开始安装Ecology7之前,需要先行完成以下准备工作: 1.1 下载软件 首先,需要下载以下所需软件: JDK 1.8 Oracle 11gR2 安装包 Ecology7 安装包 其中,JDK 1.8安装包可从Oracle官方网站下载,而Oracle 11gR2及Ec…

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