gpt4 book ai didi

php - 登录提交 php 不工作

转载 作者:搜寻专家 更新时间:2023-10-30 22:11:25 25 4
gpt4 key购买 nike

我编写了一个用于提交登录表单的 .php 页面。它扫描数据库以检查任何匹配项,但是,大约 2 周前我停止在我的网站上工作,我又开始工作了,但是现在决定停止工作了?我收到此错误:

Fatal error: Call to a member function prepare() on a non-object in C:\xampp\htdocs\loginsubmit.php on line 16

这是我用于登录提交的 PHP

<font face="ClearSans-Thin">
<font color="lightgray">

<?php

include 'loginform.php';
include 'connection.php';

if (isset($_POST['submit'])) {
$user = $_POST['username'];
global $db;
$pass = $_POST['password'];

$query = "SELECT COUNT(*) AS cnt FROM Users WHERE Username='" . mysqli_real_escape_string($connection,$user) . "' && Password='" . mysqli_real_escape_string($connection,$pass). "'";
$query = "INSERT INTO Users (FirstName, LastName, Email, DateofBirth, Username, Password) VALUES (?, ?, ?, ?, ?, ?)";
$stmt = $db->prepare($query);
$stmt->bind_param("ssssss", firstname, $lastname, $email, $dob, $user, $pass);
$stmt->execute();
$stmt->close();
$result = mysqli_query($connection, $query) or die(mysqli_error($connection));
$row = mysqli_fetch_assoc($result);
if ($row["cnt"] > 0) {
session_start();
$_SESSION['login'] = "1";

header('Location: homepage.php');
} else {
header('Location: loginform.php');

}
}

最佳答案

“您使用了两种不同类型的连接,$dbo(PDO 对象)和 $connection(来自 mysqli_connect() 的句柄)。此外,第一个查询从未执行过。我看起来一切都很好,因为mysqli_query() 函数执行成功。你真的应该只选择一个并坚持下去。这看起来很乱”

要继续,我假设您的 connection.php 文件包含您的 mysqli_connect(),所以我将采用该路线。您可能希望删除该全局变量以及对语句和 PDO 对象的任何引用,清理您将要插入的值并将它们设置在查询字符串中,替换“?”。

关于php - 登录提交 php 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27448311/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com