请帮助我,我无法在互联网上找到答案。我尝试了很多东西,但仍然无法得到答案。 在我的localhost中,它可以工作,但是当我把它放在我的网站上时,它不起作用。请帮帮我们
public function createUser($name, $email, $pass) {
require_once 'PassHash.php';
$api_key = uniqid('', true);
$passwordHash = PassHash::hash($pass); // hash password
$stmt = $this->conn->prepare("INSERT INTO `users`(`name`, `email`, `password`, `api_key`, `friends`)
VALUES(?, ?, ?, ?, 0)");
$stmt->bind_param("ssss", $name, $email, $passwordHash, $api_key);
$result = $stmt->execute();
$stmt->close();
// check for successful store
if ($result) {
$stmt = $this->conn->prepare("SELECT * FROM users WHERE email = ?");
$stmt->bind_param("s", $email);
$stmt->execute();
$stmtStore = $stmt->store_result();
$user = fetch_assoc($stmtStore);
$stmt->close();
return $user;
} else {
return false;
}
}
答案 0 :(得分:0)
fetch_assoc()
是mysqli_result
类的方法,但是在代码中没有任何地方可以包含该类的任何对象。
首先,必须从语句中获取结果,然后可以在该结果对象上调用方法。例如:
$stmt = $this->conn->prepare("SELECT * FROM users WHERE email = ?");
$stmt->bind_param("s", $email);
$stmt->execute();
$result = $stmt->get_result();
$user = $result->fetch_assoc();