php - 单击提交按钮时无法将信息保存到数据库并出现空白页面
问题描述
单击注册按钮后,页面变为空白,并且信息未存储在数据库中。以下是我的代码
<?php
{
echo "Connection failed: " . $e->getMessage();
}
if(isset($_POST['signup'])){
$firstname = $_POST['firstname'];
if($firstname ==''){
echo "<script>alert('Please enter your name!')</script>";
exit();
}
$query = "insert into users(firstname) VALUES ($firstname) ";
$query = $conn->prepare($query);
$query->bindParam('1', $firstname);
$query->execute();
if($query->rowCount() > 0) {
echo "<script>window.open('index.php','_self')</script>";
exit();
}
}
解决方案
需要将参数与查询正确绑定。
如果您使用的是 PDO,则使用它来绑定名字
$query = "insert into users(firstname) VALUES (:firstname)";
$query = $conn->prepare($query);
$query->bindParam(':firstname', $firstname);
$query->execute();
或者
如果您使用的是 Mysqli,那么
$stmt = $conn->prepare("insert into users(firstname) VALUES (?)");
$stmt->bind_param("s",$firstname);
$stmt->execute();
推荐阅读
- php - 如何在扩展会话类codeigniter 3中编写数据库查询
- jquery-select2 - 如何获取自动生成的select2的id
- excel - 借助用户表单中的组合框选择特定列
- ruby-on-rails - Webpacker manifest.json 在 docker-compose up --build 之后恢复到旧的资产引用
- java - Java Spring Security 5 + MySQL 数据库:编码密码看起来不像 BCrypt
- javascript - 如何在 Mendix Pluggable Widget 中包含资源?
- python - 读取 S3 目录中的多个 json 文件然后将它们加载到 MySQL 表的最佳方法是什么?
- css - JavaFX CSS 中的多种渐变和颜色
- javascript - 具有初始缩放的 d3.js 区域图
- javascript - Angular 反应式表单验证的奇怪错误