个人网站留言页面(前端jQuery编写、后台php读写MySQL)

yizhihongxing

下面给出关于“个人网站留言页面(前端jQuery编写、后台php读写MySQL)”的完整攻略。

步骤一:数据库设计

首先需要通过设计数据库来存储留言信息。假设我们需要存储“留言者姓名”、“留言内容”、“留言时间”等信息,可以创建一个名为"messageBoard"的MySQL数据库,并在其中新建一个名为"messages"的表来存储留言。

CREATE DATABASE messageBoard;
USE messageBoard;
CREATE TABLE messages (
    id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
    name VARCHAR(30) NOT NULL,
    message TEXT NOT NULL,
    time TIMESTAMP
) 

步骤二:建立前端页面

接下来,通过jQuery库完成前端页面的开发。我们需要实现一个表单,让用户输入姓名和留言内容并提交,同时从后台读取已有留言展示在页面上。以下是示例代码:

<!DOCTYPE html>
<html>
<head>
    <title>留言板</title>
    <script src="https://code.jquery.com/jquery-3.5.1.min.js"></script>
</head>
<body>
    <h1>留言板</h1>
    <form>
        <label for="name">姓名:</label>
        <input type="text" id="name" name="name" required><br>

        <label for="message">留言:</label>
        <textarea id="message" name="message" rows="4" cols="50" required></textarea><br>

        <button type="button" id="submit">提交</button>
    </form>

    <div id="messageList">
        <h3>已有留言:</h3>
        <ul></ul>
    </div>

    <script>
        $(function() {
            // 获取数据库中原有留言
            $.getJSON("get_messages.php", function(data) {
                data.forEach(function(message) {
                    $("#messageList ul").append("<li>" + message.name + ":" + message.message + "</li>");
                })
            });

            // 提交留言
            $("#submit").click(function() {
                $.post("add_message.php", {
                    name: $("#name").val(),
                    message: $("#message").val()
                }, function() {
                    alert("留言成功!");
                    location.reload();
                });
            });
        });
    </script>
</body>
</html>

步骤三:建立后台接口

为了能够读取数据库以及将用户提交的留言存储到数据库中,我们需要建立与后台的接口。具体而言,需要编写两个PHP脚本,分别用于读取数据库中已有的留言,以及向数据库中添加新的留言。

get_messages.php

<?php

$servername = "localhost"; // 数据库服务器名
$username = "root"; // 数据库用户名
$password = ""; // 数据库密码
$dbname = "messageBoard"; // 数据库名

// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);

// 检查连接是否成功
if ($conn->connect_error) {
    die("连接失败: " . $conn->connect_error);
}

// 从数据库中选择所有留言
$sql = "SELECT name, message FROM messages";
$result = $conn->query($sql);

// 将查询结果转化为JSON字符串返回给前端
$rows = array();
while($row = $result->fetch_assoc()) {
    $rows[] = $row;
}
echo json_encode($rows);

// 关闭连接
$conn->close();

?>

add_message.php

<?php

$servername = "localhost"; // 数据库服务器名
$username = "root"; // 数据库用户名
$password = ""; // 数据库密码
$dbname = "messageBoard"; // 数据库名

// 获取前端提交的留言信息
$name = $_POST["name"];
$message = $_POST["message"];

// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);

// 检查连接是否成功
if ($conn->connect_error) {
    die("连接失败: " . $conn->connect_error);
}

// 向数据库中插入新留言
$sql = "INSERT INTO messages (name, message) VALUES ('$name', '$message')";
$conn->query($sql);

// 关闭连接
$conn->close();

?>

步骤四:测试与部署

最后,在本地服务器上运行PHP后台,将前端页面和后台PHP脚本上传至服务器,即可完成留言板的部署。您可以在网站上测试留言功能,以确保一切正常运行。

这就是一个比较简单的留言板的完整攻略。对于更加复杂的应用来说,可能需要更多的技术和代码,但是基本原理都十分相似。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:个人网站留言页面(前端jQuery编写、后台php读写MySQL) - Python技术站

(0)
上一篇 2023年6月11日
下一篇 2023年6月11日

相关文章

  • nodejs模块学习之connect解析

    nodejs模块学习之connect解析 简介 Connect是Node.js的中间件框架,它利用中间件将请求和响应对象传递给链中的下一个中间件,以此实现在请求处理过程中的各种逻辑处理。Connect的特点是非常小,轻量级,所有功能都是由各种中间件来实现的。 安装 可以使用npm来安装Connect: npm install connect 用法 在Node…

    JavaScript 2023年5月28日
    00
  • JavaScript 函数表达式与函数声明的用法及区别

    JavaScript 中函数是一等公民,这意味着函数可以用作变量,参数或返回值来传递。我们可以使用两种方式声明和定义函数:函数声明和函数表达式。 函数声明 函数声明是使用 function 关键字定义函数的方式。函数声明提升(Hoisting),这意味着可以在函数声明之前调用函数。因为在 JavaScript 中,函数声明会被提升到作用域的顶部或当前的函数中…

    JavaScript 2023年5月27日
    00
  • JavaScript中的Function函数

    下面是关于JavaScript中的Function函数的完整攻略: 1. Function函数概述 Function函数是JavaScript中最基本的一种类型,使用Function函数可以将代码封装成一个可重复使用的函数,在代码执行时可以多次调用,从而提高代码的灵活性和复用性。一个Function函数实际上是一个对象,有具体的属性和方法供我们调用,同时也可…

    JavaScript 2023年5月27日
    00
  • JS使用window.requestAnimationFrame()对列表切片进行渲染

    当需要对一个大型列表进行渲染时,最好使用requestAnimationFrame()代替setTimeout()或setInterval(),因为requestAnimationFrame()会在每一帧结束后更新状态,这比定时器更精确地匹配帧率并避免过多的重绘。 以下是使用window.requestAnimationFrame()对列表切片进行渲染的攻略…

    JavaScript 2023年6月11日
    00
  • JavaScript 中的单例内置对象Global 与 Math

    JavaScript 中的单例内置对象 Global 是指在整个 JavaScript 运行时期内始终存在的对象,它是所有全局变量和函数的宿主。它提供了很多通用的功能和属性,如全局变量、内存管理、计时器、调试工具等,可以被任何代码访问和使用。下面我们来讲解 Global 对象和 Math 对象的详细内容。 Global 对象 Global 对象是每一个 Ja…

    JavaScript 2023年6月10日
    00
  • js判断在哪个浏览器打开项目的方法

    要判断当前网页所在的浏览器类型,可以使用JavaScript的navigator对象。该对象提供了一些属性,包括userAgent,用于返回客户端的信息,包括浏览器类型、版本、操作系统等。在浏览器端执行以下代码可输出当前浏览器的版本信息: const browser = navigator.userAgent.toLowerCase(); console.l…

    JavaScript 2023年6月11日
    00
  • 超全面的javascript中变量命名规则

    下面我将为大家详细讲解“超全面的JavaScript中变量命名规则”的攻略。 1. 变量命名规则概述 在JavaScript中,为变量命名有一定的规则。以下是命名变量的一般规则: 变量名可以由字母、数字、下划线或美元符号组成,但第一个字符不能是数字。 变量名可以含有字母的大小写,但建议使用小写字母。 变量名不能使用JavaScript中的关键字,如:if、e…

    JavaScript 2023年5月19日
    00
  • JS轮播图中缓动函数的封装

    如果你想实现一个流畅的 JS 轮播图,那么你需要考虑如何使用缓动函数来实现平滑的动画效果。在本篇攻略中,我们将会详细讲解如何封装缓动函数,并结合两个简单的示例来演示如何使用。 一、什么是缓动函数? 缓动函数是一种常见的 JavaScript 动画技术,它使用数学公式来控制动画中的速度变化。常见的缓动函数包括线性缓动函数、加速缓动函数和弹性缓动函数等。 在实现…

    JavaScript 2023年6月11日
    00
合作推广
合作推广
分享本页
返回顶部