当我点击登录表单上的提交但我收到一个空白页面时,我试图回应'存在'。该网站已连接到数据库。任何评论,反馈或帮助都非常感谢。
我的索引文件包含表单,页面连接到以下文件。
初始文件:
<?php
session_start();
//error_reporting(0);
require 'database/connect.php';
require 'functions/general.php';
require 'functions/users.php';
$errors = array();
?>
登录文件:
include 'core/init.php';
if (user_exists('contactme@jazsingh.com') === true) {
echo 'exists';
}
if (empty($_POST) === false) {
$email = $_POST['email'];
$password = $_POST['password'];
if (empty($email) === true || empty($password) === true) {
$errors[] = 'You need to enter a email and password';
} else if (user_exists($email) === false) {
$errors[] = 'We can\'t find that email. Have you registered?';
}
用户文件:
<?php
function user_exists($email) {
$email = sanitize($email);
return (mysql_result(mysql_query("SELECT COUNT(`user_id`) FROM `users` WHERE `email` = '$email'"), 0) == 1) ? true : false;
}
?>
答案 0 :(得分:0)
不要检查if user_exists('contactme@jazsingh.com') === true
,只需检查user_exists('contactme@jazsingh.com')
的响应。
目前,你期待一个bool,但是mysql_result会返回一个字符串。
如果没有结果,你会得到假,但如果你有结果,你就会得到假。
答案 1 :(得分:0)
好的,试试这个:
function user_exists($email) {
$email = sanitize($email);
$query = "SELECT COUNT(`user_id`) FROM `users` WHERE `email` = '$email'";
var_dump($query);
var_dump(mysql_result(mysql_query($query), 0));
return (mysql_result(mysql_query($query), 0) == 1) ? true : false;
}
请在此处发布输出。
答案 2 :(得分:0)
在Phpmyadmin中,将其粘贴到que SQL选项卡中:
SELECT COUNT(`user_id`) FROM `users` WHERE `email` = 'contactme@jazsingh.com'
并告诉我们结果。