php - 我无法将我的 php 连接到我的 html 表单。表单操作不起作用
问题描述
我创建了一个简单的消息表单,每当我测试它时,表单操作似乎都不起作用。它只会让我进入错误页面
<div class="form">
<form action="connect.php" method="post">
<input id="name" name="name" type="text" class="form-control" placeholder="Your Name" required>
<br>
<textarea name="message" id="message" class="form-control message" placeholder="Message" rows="4" required></textarea> <br>
<input type="submit" class="form-control submit" value="SEND MESSAGE" name="submit">
</form>
</div>
这是php
<?php
$name = $_POST['name'];
$message = $_POST['message'];
$conn = new mysqli ('localhost','root','','messg');
if($conn->connect_error){
die('Connection Failed : ' .$conn->connect_error);
}else{
$stmt = $conn->prepare("insert into mesages(name, message) values(?, ?)");
$stmt->bind_param("ss",$name, $message);
$stmt->execute();
echo "Message Sent!";
$stmt->close();
$conn->close();
}
?>
解决方案
超文本传输协议 (HTTP) 405 Method Not Allowed响应状态码表示请求方法为服务器已知但目标资源不支持。
服务器必须在 405 响应中生成一个Allow头字段,其中包含目标资源当前支持的方法的列表。
如何修复不允许的 405 方法
这听起来可能有点太简单了,但 405 Method Not Allowed 错误的最常见原因是输入了错误的 URL。大多数 Web 服务器都受到严格保护,旨在禁止访问不正确的 URL,以防止用户访问错误的页面(或尝试访问不存在的页面)。
因此,在继续之前,请仔细检查以确保您已正确输入要访问的文件的 URL。犯错比您想象的要容易——例如忘记一个字母或拼错一个单词。您可能还会发现,只需刷新页面即可提示它正确加载。
connect.php
听起来像是无法访问或设置不正确的数据库连接页面,请检查您是否将表单重定向到正确的页面。
Mysqli 连接应如下所示:
$host = '127.0.0.1';
$db = 'test';
$user = 'root';
$pass = '';
$charset = 'utf8mb4';
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
try {
$mysqli = new mysqli($host, $user, $pass, $db);
$mysqli->set_charset($charset);
} catch (\mysqli_sql_exception $e) {
throw new \mysqli_sql_exception($e->getMessage(), $e->getCode());
}
并像这样查询:
$stmt = $mysqli->prepare("insert into mesages(name, message) values(?, ?)");
$stmt->bind_param("ss",$name, $message);
if($stmt->execute()){
echo "Message Sent!";
}
$stmt->close();
$conn->close();
To Allow 标头列出了资源支持的方法集。
推荐阅读
- numpy - Numpy 和删除具有相同值的行的最佳方法
- javascript - 如何在 Visial Studio Code 扩展开发中为命令“explorer.newFile”提供参数
- c++ - 如何将txt文件中的数据打印到二维矩阵?(不使用向量)
- reactjs - React:与磁盘/情感上的对应名称不匹配
- sql - 将函数应用于 SQL Server 中的每一行并对该行执行附加条件
- python - 添加 ID 覆盖的距离并将该值添加到 pandas 数据框上的列
- jmeter-plugins - 使用 JMeter 测试 MQTT 客户端
- git - 在代码中标记 github 贡献者
- javascript - 如何让这个 JavaScript 重复
- django - 如何限制匿名用户在 django poll 应用程序中只投票一次?