当前位置:首页 > 探索 > html登录页面设计如何t通过phpstudy连接数据库

html登录页面设计如何t通过phpstudy连接数据库

2026-10-17 05:46:18 [综合] 来源:力不从心网

html登录页面设计如何通过phpstudy连接数据库

本地调试PHP项目,登录phpStudy是页面个省事的工具箱。但很多人卡在“HTML页面怎么连数据库”这一步——其实HTML自己连不了数据库,设计数据它只是通过静态标签。真正干活的连接是PHP文件,HTML通过表单把数据交给PHP,登录PHP再去连MySQL。页面这层窗户纸捅破了,设计数据后面就顺了。通过

先说你本地要装好phpStudy,连接启动Apache和MySQL服务,登录两个灯变绿就成。页面然后在phpStudy的设计数据网站根目录(默认是`WWW`文件夹)新建一个目录,比如叫`login_demo`。通过你的连接HTML文件、PHP文件都放这里。别放桌面或别处,不然路径容易乱,浏览器访问会404。

写登录页HTML时,别用花哨的框架,一个干净的表单就够。重点在`action`和`method`属性——`action`指向处理数据的PHP文件,比如`login.php`;`method`用`post`,密码不会暴露在URL里。举个例子:

<form action="login.php" method="post"> 用户名:<input type="text" name="username"> 密码:<input type="password" name="password"> <button type="submit">登录</button> </form>

这段代码里,`name`属性是关键的。PHP那边靠`$_POST['username']`取数据,名字对不上就白搭。我见过有人写`name="user"`,PHP里却用`$_POST['username']`,结果折腾半小时找不出错——先检查名字拼写,这是新手最容易犯的错。

接下来是重头戏:PHP连接MySQL。phpStudy自带的MySQL默认用户名是`root`,密码也是`root`(新版可能空密码,看你的版本)。连接用`mysqli`扩展,别用老掉牙的`mysql_*`函数,PHP7以后直接删了。代码长这样:

<?php $host = '127.0.0.1'; $user = 'root'; $pass = 'root'; $dbname = 'test'; $conn = new mysqli($host, $user, $pass, $dbname); if ($conn->connect_error) {  die('连接失败:' . $conn->connect_error); } ?>

这里有个坑。`$dbname`对应的数据库必须先在MySQL里建好,不然连接直接报错。打开phpStudy的“MySQL工具”或者用命令行,执行`CREATE DATABASE test;`,再建一张用户表:

CREATE TABLE users ( id INT AUTO_INCREMENT PRIMARY KEY, username VARCHAR(50) UNIQUE, password VARCHAR(255) );

密码字段用`VARCHAR(255)`,因为后面要存`password_hash()`生成的哈希值,那玩意儿有60多个字符,短了存不下。直接存明文密码是作死行为,别图省事。

现在把HTML表单和PHP串起来。在`login.php`里,先接收POST数据,再查数据库比对。一个基础版本:

<?php session_start(); if ($_SERVER['REQUEST_METHOD'] === 'POST') {  $username = $_POST['username']; $password = $_POST['password']; $conn = new mysqli('127.0.0.1', 'root', 'root', 'test'); $stmt = $conn->prepare("SELECT password FROM users WHERE username = ?"); $stmt->bind_param("s", $username); $stmt->execute(); $result = $stmt->get_result(); if ($row = $result->fetch_assoc()) {  if (password_verify($password, $row['password'])) {  $_SESSION['user'] = $username; header('Location: welcome.php'); exit; } else {  echo "密码不对"; } } else {  echo "用户不存在"; } } ?>

看见`bind_param`了吗?这叫预处理语句,防SQL注入的。直接拼接字符串`"SELECT ... WHERE username = '$username'"`是自杀式写法,黑客用个引号就能拖库。你本地练手无所谓,但养成好习惯不亏。

最后一步,在浏览器地址栏输入`http://127.0.0.1/login_demo/login.html`,别用`file://`协议直接打开HTML——那样表单提交会失败,因为PHP需要Apache解析。如果页面报404,检查文件是不是在`WWW`目录下,或者端口是不是被占用(phpStudy默认80端口,可能被IIS或别的程序抢了)。

我见过太多人卡在“明明代码没错但就是连不上”的困境。排查顺序:先看MySQL服务启动没,再用`telnet 127.0.0.1 3306`测端口通不通,最后看PHP报错日志(phpStudy的日志在`phpstudy_pro\Runtime\Log`目录下)。八成是密码错了或者数据库名写错,别一上来就怀疑代码逻辑。

这套流程跑通后,你可以加注册页面、加验证码、加session超时控制。但别急着堆功能——先把“表单→PHP→MySQL→反馈”这条链路走顺了,后面都是锦上添花。数据库连接失败时,PHP会返回500或者空白页,这时候把`php.ini`里的`display_errors`改成`On`,重启服务,错误信息就全显示出来了。调试完记得改回去,不然上线会暴露服务器路径。

(责任编辑:热点)

推荐文章
  • 威海49800民间互助理财漏洞图解

    威海49800民间互助理财漏洞图解 威海49800民间互助理财,说白了就是拉人头交钱。我实地跟过几个线下场子,把他们的资金流向画成图,漏洞一目了然。 先看最基础的分配表。你交49800,上线们当场分走差不多15000,剩下的进所谓“公共 ...[详细]
  • 点击劫持漏洞复现

    点击劫持漏洞复现 点击劫持是个老掉牙的攻击手法,但直到今天,它依然能在各大网站上得手。我上周测试某银行门户时,就成功在透明iframe里叠了一个“领取优惠券”的按钮,用户点下去,实际触发的是转账确认。 原理简单得让人发 ...[详细]
  • 漏洞被骗

    漏洞被骗 凌晨三点,我盯着手机屏幕上那条"系统检测到您的账户存在异常登录,请在十分钟内点击链接验证,否则将永久冻结"的短信,手指悬在屏幕上方,迟迟没有落下。 这条短信来得太巧了。白天我刚在某电商平台申请了售后, ...[详细]
  • 360强力删除工具

    360强力删除工具 360强力删除工具,这名字听着就像个暴力拆迁队。可偏偏就是它,救过我无数次急。 有一次,我下载了个来路不明的播放器。安装时手快,没取消捆绑,结果桌面瞬间多出七八个图标。这倒还好,真正麻烦的是那个叫“影 ...[详细]
  • 遇到bug如何抓取日志

    遇到bug如何抓取日志 凌晨两点,我盯着屏幕上那个红得刺眼的报错,心里只有一个念头:这bug到底干了啥? 日志就是案发现场。抓不到日志,你就是在对着空气破案。别急着改代码,先想清楚怎么把现场完整地搬出来。 最直接的办法——看 ...[详细]
  • 网站源代码有什么用

    网站源代码有什么用 拿到一个网站源代码,很多人第一反应是“这堆乱码跟我有什么关系”。但如果你开过网店、做过推广,或者被某些建站公司坑过,就会明白源代码就是网站的“房产证”加“装修图纸”。 我见过一个小企业主,花了八千块找 ...[详细]
  • 在线培训平台

    在线培训平台 早上七点,李明的手机闹钟还没响,先弹出一条推送:“你报名的《Python数据分析》课程将在15分钟后开始直播。”他揉着眼睛从床上爬起来,顺手点开链接,屏幕里讲师已经开始调试麦克风。这是他在这个在线培训 ...[详细]
  • 自学渗透

    自学渗透 自学渗透 我第一次真正接触“渗透测试”这个词,是在大二那年。宿舍里一个哥们儿用U盘插进辅导员电脑,三分钟不到,把期末考试的题库拖了出来。他用的工具叫Metasploit,一条命令敲下去,系统就弹回了s ...[详细]
  • 如何修复网站劫持

    如何修复网站劫持 昨晚凌晨两点,我朋友老张打来电话,声音发颤——他的电商站被人改了首页,跳转到一个菠菜平台。百度快照里他的网站标题还挂着“XX数码专营店”,点进去却是“澳门线上娱乐”。这种劫持,技术上叫DNS劫持或服务 ...[详细]
  • 河北沧州公司天眼查

    河北沧州公司天眼查 打开天眼查,输入“河北沧州”,跳出来的公司列表密密麻麻。沧州这地方,化工和管道装备是硬骨头,但真正让我留意的,是那些注册资本几百万、成立不到三年的小公司——它们像野草,一茬接一茬地冒出来,又悄无声息地 ...[详细]
热点阅读