当前位置: 首页 > news >正文

从零开始设计一个完整的网站:HTML、CSS、PHP、MySQL 和 JavaScript 实战教程

前言

本文将从实战角度出发,带你一步步设计一个完整的网站。我们将从 静态网页 开始,然后加入 动态功能(使用 PHP),连接 数据库,最后加入 JavaScript 实现交互功能。通过这个教程,你将掌握一个网站的真正设计过程!


目录

  1. 网站功能设计

  2. 准备工具

  3. 设计静态网页(HTML + CSS)

  4. 设计动态网页(PHP)

  5. 创建数据库(MySQL)

  6. 加入 JavaScript 实现交互

  7. 测试与发布

  8. 总结与扩展


1. 网站功能设计

我们的网站将包含以下功能:

  • 首页:展示欢迎信息和网站介绍(静态网页)。

  • 留言板:用户可以提交留言,留言会保存到数据库(动态网页 + 数据库)。

  • 关于我们:介绍网站的背景信息(静态网页)。

  • JavaScript 交互:表单验证、动态内容更新等。


2. 准备工具

在开始之前,你需要以下工具:

  1. 代码编辑器:推荐使用 VS Code(免费且简单)。

  2. 本地服务器:安装 XAMPP,它可以帮助你在电脑上运行 PHP 和数据库。

  3. 浏览器:用来测试你的网站(比如 Chrome 或 Edge)。


3. 设计静态网页(HTML + CSS)

静态网页使用 HTMLCSS 来编写。

3.1 创建项目文件夹

在你的电脑上创建一个文件夹,比如叫 my_website,里面放以下文件:

  • index.html(首页)

  • about.html(关于我们)

  • style.css(样式文件)

  • contact.php(留言板,后面会用到)

3.2 编写 index.html

html

我的网站

欢迎来到我的网站!

这是一个简单的网站示例,用来学习网站设计。

运行 HTML

3.3 编写 about.html

html

关于我们

关于我们

我们是一个热爱编程的团队,致力于帮助大家学习网站设计!

运行 HTML

3.4 编写 style.css

css

body {
font-family: Arial, sans-serif;
background-color: #f0f0f0;
margin: 0;
padding: 0;
}

header {
background-color: #333;
color: white;
padding: 10px;
text-align: center;
}

nav a {
color: white;
margin: 0 10px;
text-decoration: none;
}

main {
padding: 20px;
text-align: center;
}


4. 设计动态网页(PHP)

动态网页可以让用户提交数据,并将数据保存到数据库中。

4.1 编写 contact.php

html

留言板

留言板



提交留言

运行 HTML

4.2 编写 save_message.php

php

<php
// 连接数据库
$servername = “localhost”;
$username = “root”; // 默认用户名
$password = “”; // 默认密码为空
$dbname = “my_website_db”;

c o n n = n e w m y s q l i ( conn = new mysqli( conn=newmysqli(servername, $username, $password, $dbname);

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

// 获取用户提交的数据
$name = $_POST[‘name’];
$message = $_POST[‘message’];

// 插入数据到数据库
s q l = " I N S E R T I N T O m e s s a g e s ( n a m e , m e s s a g e ) V A L U E S ( ′ sql = "INSERT INTO messages (name, message) VALUES (' sql="INSERTINTOmessages(name,message)VALUES(name’, ‘$message’)";

if ( c o n n − > q u e r y ( conn->query( conn>query(sql) === TRUE) {
echo “留言成功!”;
} else {
echo "错误: " . $sql . “
” . $conn->error;
}

$conn->close();


5. 创建数据库(MySQL)

  1. 打开 XAMPP,启动 ApacheMySQL

  2. 打开浏览器,访问 http://localhost/phpmyadmin

  3. 创建一个新的数据库,名字叫 my_website_db

  4. 在数据库中创建一张表,名字叫 messages,包含以下字段:

    • id(主键,自动递增)

    • name(用户名字)

    • message(留言内容)


6. 加入 JavaScript 实现交互

6.1 表单验证

contact.php 中加入 JavaScript 表单验证功能:

html

6.2 动态更新内容

index.html 中加入 JavaScript 动态显示时间功能:

html

<script>
function showTime() {var timeElement = document.getElementById("time");var now = new Date();timeElement.innerHTML = "当前时间:" + now.toLocaleTimeString();
}
</script>

运行 HTML


7. 测试与发布

  1. 将项目文件夹放到 XAMPP 的 htdocs 文件夹中。

  2. 打开浏览器,访问 http://localhost/my_website/index.html

  3. 测试各个页面的功能。


8. 总结与扩展

通过这个项目,你学会了:

  • 使用 HTML 和 CSS 设计静态网页。

  • 使用 PHP 实现动态功能。

  • 使用 MySQL 数据库保存数据。

  • 使用 JavaScript 实现交互功能。

你可以继续扩展这个网站,比如添加用户登录、图片上传等功能。加油!


如果你有任何问题,欢迎在评论区留言!如果觉得这篇文章对你有帮助,别忘了点赞、收藏和关注哦!??


标签网站设计 HTML CSS PHP MySQL JavaScript 实战教程

相关文章:

从零开始设计一个完整的网站:HTML、CSS、PHP、MySQL 和 JavaScript 实战教程

前言 本文将从实战角度出发&#xff0c;带你一步步设计一个完整的网站。我们将从 静态网页 开始&#xff0c;然后加入 动态功能&#xff08;使用 PHP&#xff09;&#xff0c;连接 数据库&#xff0c;最后加入 JavaScript 实现交互功能。通过这个教程&#xff0c;你将掌握一个…...

CSS 对齐:深入理解与技巧实践

CSS 对齐:深入理解与技巧实践 引言 在网页设计中,元素的对齐是至关重要的。一个页面中元素的对齐方式直接影响到页面的美观度和用户体验。CSS 提供了丰富的对齐属性,使得开发者可以轻松实现各种对齐效果。本文将深入探讨 CSS 对齐的原理、方法和技巧,帮助开发者更好地掌握…...

oracle游标为什么没有共享,统计一下原因

-- Script Code为什么没共享 define sql_id bs391f0yq5tpw;set serveroutput onDECLAREv_count number;v_sql varchar2(500);v_sql_id varchar2(30) : &sql_id; BEGINv_sql_id : lower(v_sql_id);dbms_output.put_line(chr(13)||chr(10));dbms_output.put_line(sql_id: ||…...

IDEA中.gitignore未忽略指定文件的问题排查与解决

IDEA 中.gitignore 未忽略.env 文件的问题排查与解决 在使用 IntelliJ IDEA 进行项目开发时,合理利用.gitignore文件来管理版本控制是非常重要的。它能帮助我们排除一些不需要纳入版本管理的文件,比如包含敏感信息的.env文件。然而,有时我们会遇到一种情况:明明已经将.env…...

通往 AI 之路:Python 机器学习入门-语法基础

第一章 Python 语法基础 Python 是一种简单易学的编程语言&#xff0c;广泛用于数据分析、机器学习和人工智能领域。在学习机器学习之前&#xff0c;我们需要先掌握 Python 的基本语法。本章将介绍 Python 的变量与数据类型、条件语句、循环、函数以及文件操作&#xff0c;帮助…...

形象生动讲解Linux 虚拟化 I/O

用现实生活的比喻和简单例子来解释 Linux 虚拟化 I/O&#xff0c;就像给朋友讲故事一样。 虚拟化 I/O 要解决什么问题&#xff1f; 想象你有一栋大房子&#xff08;物理服务器&#xff09;&#xff0c;想把它分割成多个小公寓&#xff08;虚拟机&#xff09;出租。每个租客&…...

6. Nginx 动静分离配置案例(附有详细说明+配图)

6. Nginx 动静分离配置案例(附有详细说明配图) 文章目录 6. Nginx 动静分离配置案例(附有详细说明配图)1. 动静分离概述说明2. 先使用传统方式实现&#xff0c;不使用 Nginx3. 使用上 Nginx 实现动静分离优化步骤4. 最后&#xff1a; 1. 动静分离概述说明 什么是动静分离&…...

数据集笔记:新加坡停车费

data.gov.sg 该数据集包含 新加坡各停车场的停车费&#xff0c;具体信息包括&#xff1a; 停车场名称&#xff08;Carpark&#xff09;&#xff1a;如 Toa Payoh Lorong 8、Ang Mo Kio Hub、Bras Basah Complex 等。停车区域类别&#xff08;Category&#xff09;&#xff1a…...

SQL经典题型

查询不在表里的数据&#xff0c;一张学生表&#xff0c;一张学生的选课表&#xff0c;要求查出没有选课的学生&#xff1f; select students.student_name from students left join course_selection on students.student_idcourse_selection.student_id where course_selecti…...

最新Java面试题,常见面试题及答案汇总

Java最新常见面试题 答案汇总 原文地址&#xff1a;https://blog.csdn.net/sufu1065/article/details/88051083 1、面试题模块汇总 面试题包括以下十九个模块&#xff1a; Java 基础、容器、多线程、反射、对象拷贝、Java Web 模块、异常、网络、设计模式、Spring/Spring MVC…...

学习第九天-栈

栈的定义&#xff1a;栈是一种线性表数据结构&#xff0c;仅允许在表的一端&#xff08;栈顶&#xff09;进行插入&#xff08;入栈&#xff09;和删除&#xff08;出栈&#xff09;操作。没有数据元素时为「空栈」&#xff0c;遵循「后进先出&#xff08;LIFO&#xff09;」原…...

Java基础关键_016_System 类

目 录 一、常用属性 1.static final PrintStream err 2.static final InputStream in 3.static final PrintStream out 二、常用方法 1.arraycopy(Object src, int srcPos, Object dest, int destPos, int length) 2.currentTimeMillis() 3.nanoTime() 4. exit(int st…...

计算机毕设JAVA——某高校宿舍管理系统(基于SpringBoot+Vue前后端分离的项目)

文章目录 概要项目演示图片系统架构技术运行环境系统功能简介 概要 网络上许多计算机毕设项目开发前端界面设计复杂、不美观&#xff0c;而且功能结构十分单一&#xff0c;存在很多雷同的项目&#xff1a;不同的项目基本上就是套用固定模板&#xff0c;换个颜色、改个文字&…...

【 实战案例篇三】【某金融信息系统项目管理案例分析】

大家好,今天咱们来聊聊金融行业的信息系统项目管理。这个话题听起来可能有点专业,但别担心,我会尽量用大白话给大家讲清楚。金融行业的信息系统项目管理,说白了就是如何高效地管理那些复杂的IT项目,确保它们按时、按预算、按质量完成。咱们今天不仅会聊到一些理论,还会通…...

vivado 避免本地时钟、创建输出时钟

避免本地时钟 本地时钟是使用常规结构资源而不是专用全局时钟资源进行布线的时钟网络。在大多数情况下&#xff0c; Vivado 综合和 Vivado 逻辑优化工具在架构要求的时钟缓存或具有超过 30 个时钟负载的时钟网络中插入时钟缓存。本地时钟通常发生在&#xff1a; • 全局时…...

二十三种设计模式

2 工厂方法模式 工厂模式&#xff08;Factory Pattern&#xff09;是 Java 中最常用的设计模式之一。这种类型的设计模式属于创建型模式&#xff0c;它提供了一种创建对象的最佳方式。 在工厂模式中&#xff0c;我们在创建对象时不会对客户端暴露创建逻辑&#xff0c;并且是通…...

uniapp 中引入使用uView UI

文章目录 一、前言&#xff1a;选择 uView UI的原因二、完整引入步骤1. 安装 uView UI2. 配置全局样式变量&#xff08;关键&#xff01;&#xff09;3. 在 pages.json中添加&#xff1a;4. 全局注册组件5. 直接使用组件 五、自定义主题色&#xff08;秒换皮肤&#xff09; 一、…...

用冒泡排序法模拟qsort函数

目录 1.前言 2.qsort函数的介绍 ​3.冒泡法回顾 4.模拟qsort---buble_sort 4.1 buble_sort格式 4.2 主函数&#xff0c;以int类型为例 4.3comp_int函数的功能设计 4.4 swap函数的功能设计 5. 总代码概览 1.前言 今天&#xff0c;小邓儿带大家用冒泡排序法来模拟一下qs…...

DCN讲解

DCN是DeepFM的升级版&#xff0c;后者是只能做二阶交叉特征&#xff0c;随着阶数上升&#xff0c;模型复杂度大幅提高&#xff0c;且FM网络层较浅&#xff0c;表达能力有限。google团队通过构建深度交叉网络来自动进行特征的高阶交叉&#xff0c;且时空复杂度均为线性增长&…...

nginx的作用和应用场景

Nginx 是一款高性能的开源 Web 服务器和反向代理服务器&#xff0c;以其高效处理高并发连接和低资源消耗著称。以下是其核心作用及典型应用场景的详细解析&#xff1a; 一、Nginx 的核心作用 1. 静态资源服务器 功能&#xff1a;直接托管 HTML、CSS、JavaScript、图片等静态文…...

拒绝玩具CRUD:用 5 款全栈离线“仓储管理”微系统精通前后端解耦(附专家级级联 Prompt)

各位全栈同仁、大前端极客以及正在突破技术瓶颈的开发者们&#xff0c;大家好。作为一名每天和分布式架构、数据库事务以及前端复杂状态流打交道的工程师&#xff0c;今天想和大家聊聊全栈工程落地中的“咬合力”。在很多技术社区里&#xff0c;大家往往能看到各种速成的单表 C…...

边际效应在数据分析中的应用

边际效应是一个源于经济学但广泛应用与数据分析、产品运营、策略优化的核心概念。简单来说&#xff0c;他指的是每增加一个单位的投入&#xff08;如资源、功能、用户、广告话费&#xff09;&#xff0c;所带来的额外产出&#xff08;如收入、活跃度、用户数&#xff09;。理解…...

终极iOS位置模拟解决方案:iFakeLocation跨平台免费使用指南

终极iOS位置模拟解决方案&#xff1a;iFakeLocation跨平台免费使用指南 【免费下载链接】iFakeLocation Simulate locations on iOS devices on Windows, Mac and Ubuntu. 项目地址: https://gitcode.com/gh_mirrors/if/iFakeLocation 你是否曾想过将iPhone定位到世界任…...

使用curl命令直接调试taotoken大模型api接口的详细方法

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 使用curl命令直接调试Taotoken大模型API接口的详细方法 对于需要在无SDK环境下进行底层调试、自动化脚本编写或快速验证接口的开发…...

Engage2026会议各种Notes/Domino演示文档可以下载了

大家好&#xff0c;才是真的好。上周翻阅了一下Engage 2026大会的网站&#xff0c;发现一大半会议议程上的PPT演示文稿都已经放出来能够进行下载。地址是&#xff1a;https://engage.ug/engage2.nsf/Pages/session2026如果没看到下载的地方&#xff0c;要以List的方式来查看所有…...

Windows热键冲突终结者:Hotkey Detective一键定位占用程序

Windows热键冲突终结者&#xff1a;Hotkey Detective一键定位占用程序 【免费下载链接】hotkey-detective A small program for investigating stolen key combinations under Windows 7 and later. 项目地址: https://gitcode.com/gh_mirrors/ho/hotkey-detective 你是…...

使用curl命令快速测试Taotoken大模型API的连通性

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 使用curl命令快速测试Taotoken大模型API的连通性 在将大模型能力集成到应用之前&#xff0c;验证API的连通性和基本功能是必不可少…...

Generative AI落地四层架构与企业级避坑指南

1. 这不是“AI画画”或“AI写文案”——它是一场底层认知范式的迁移Generative AI&#xff0c;这个词现在几乎天天刷屏&#xff0c;但很多人点开一篇介绍&#xff0c;看到的还是“用MidJourney生成海报”“让ChatGPT写周报”这类表层操作。这就像当年第一次听说“互联网”&…...

监区越界预警技术革命:基于纯视觉无感全域风控体系,重构智慧监所时空管控范式

监区越界预警技术革命&#xff1a;基于纯视觉无感全域风控体系&#xff0c;重构智慧监所时空管控范式当前国内智慧监所越界预警领域&#xff0c;传统管控方案高度依赖UWB超宽带单点定位技术&#xff0c;整体技术架构以硬件堆叠为核心&#xff0c;依托标签穿戴、单点锚定、局部电…...

TrollInstallerX终极指南:iOS 14.0-16.6.1一键安装TrollStore的完整教程

TrollInstallerX终极指南&#xff1a;iOS 14.0-16.6.1一键安装TrollStore的完整教程 【免费下载链接】TrollInstallerX A TrollStore installer for iOS 14.0 - 16.6.1 项目地址: https://gitcode.com/gh_mirrors/tr/TrollInstallerX 你是否厌倦了iOS系统的种种限制&…...