You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

表单提交后返回空白页且未写入数据库,求技术排查帮助

解决表单数据无法写入数据库的问题

你的代码里有几个关键问题导致了空白页面和数据插入失败,我帮你逐一梳理并修正:

1. 数据库连接未指定目标库

你创建mysqli连接时漏传了数据库名参数,导致连接后没有选中要操作的数据库:

// 原错误代码
$conn = new mysqli($servername, $username, $password);

// 修正后
$conn = new mysqli($servername, $username, $password, $dbname);

2. 提交按钮缺少name属性,触发不了插入逻辑

你的提交按钮没有设置name="insert",所以PHP里isset($_POST['insert'])永远为false,根本不会执行插入代码。给按钮补上属性:

<input id="con_submit" name="insert" class="site-button" type="submit" value="Submit">

3. 变量名拼写错误

获取电话号码时字段名拼写错误,导致无法拿到正确值:

// 原错误代码(Numebr拼写错误)
$Phone_Number = $_POST['Phone_Numebr'];

// 修正后
$Phone_Number = $_POST['Phone_Number'];

4. SQL语法错误+过时的数据库扩展

  • INSERT语句最后一个值后面多了个逗号,会触发SQL语法错误;
  • mysql_query是已废弃的扩展,建议用mysqli的方法,同时直接拼接变量有SQL注入风险,这里先做基础修正:
if(isset($_POST['insert'])) {
    // 先转义数据避免SQL注入(更安全的方式是用预处理语句)
    $Email_Address = $conn->real_escape_string($_POST['Email_Address']);
    $First_Name = $conn->real_escape_string($_POST['First_Name']);
    $Last_Name = $conn->real_escape_string($_POST['Last_Name']);
    $Phone_Number = $conn->real_escape_string($_POST['Phone_Number']);
    $Birthday = $conn->real_escape_string($_POST['Birthday']);

    // 修正SQL语句(去掉多余逗号,明确指定字段)
    $sql = "INSERT INTO Bee_Rewarded (Email_Address, First_Name, Last_Name, Phone_Number, Birthday) 
            VALUES ('$Email_Address', '$First_Name', '$Last_Name', '$Phone_Number', '$Birthday')";
    
    if ($conn->query($sql) === TRUE) {
        echo "Data are successfully saved...";
    } else {
        // 输出错误信息方便调试
        echo "Error: " . $sql . "<br>" . $conn->error;
    }
}

5. 开启错误提示排查问题

空白页面通常是因为PHP错误被隐藏了,在PHP文件开头加上这两行,就能看到具体错误信息:

error_reporting(E_ALL);
ini_set('display_errors', 1);

额外小建议

  • 表单里的requie类应该是required,可以实现前端必填项验证;
  • 确认数据库表Bee_Rewarded的字段名、类型和你插入的数据完全匹配(比如生日字段要用DATE类型)。

把这些修正后,你的表单应该就能正常将数据写入数据库了。

内容的提问来源于stack exchange,提问作者Christopher Fewster

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.29 07:16:12