[英]Always Return False - OOP Php
I'm new in php
environment and learning how to do coding in simple OOP
format. 我是
php
环境中的新手,学习如何用简单的OOP
格式进行编码。 I'm about to test my function
in my class
to see if the user is already registered. 我即将在我的
class
测试我的function
,看看用户是否已经注册。
here's my: testController.php
这是我的:
testController.php
<?php
error_reporting(E_ALL^ E_DEPRECATED);
require_once('test.php');
$test = new test();
$email = isset($_POST['emailAdd']) ? $_POST['emailAdd'] : '';
if ($test->emailExist($email)) {
echo "TRUE";
}else {
echo "FALSE";
}
?>
My class: test.php
我的班级:
test.php
<?php
error_reporting(E_ALL^ E_DEPRECATED);
require_once('dbConnectClass.php');
class test{
private $db;
public $getEmail;
public function __construct(){
$this->db = new dbConnectClass();
$this->db->connectDatabase();
}
public function emailExist($email)
{
$getEmail = $email;
$sql = "SELECT EmailAddress FROM useryayong WHERE `EmailAddress` = '$email' ";
$result = mysqli_query($this->db->connect,$sql);
$no_of_rows = mysqli_num_rows($result);
if ($no_of_rows > 0) {
// user exist
return true;
} else {
// user not exist
return false;
}
}
}
Here's my: dbConnectClass.php
这是我的:
dbConnectClass.php
<?php
//INCLUDE DB
require('dbConnect.php');
class dbConnectClass{
//VAR Connect
public $connect;
//CONSTRUCTOR
public function __construct(){}
//DESTRUCTOR
public function __destruct(){}
//METHOD - CONNECT TO DATBASE
public function connectDatabase(){
$this->connect = mysqli_connect(DB_SERVER,
DB_USER,
DB_PASSWORD,
DB_DATABASE) or die(mysqli_error($this->connect));
//SET CUSTOM ERROR MESSAGE
if (mysqli_connect_errno()) {
die("Database connection failed");
}else {
return $this->connect;
}
}
//METHOD - CLOSE DATABASE CONNECTION
public function closeDatabaseCon(){
mysqli_close($this->connect);
}
}//END CLASS
?>
In my table dards@yahoo.com
exist. 在我的表中存在
dards@yahoo.com
。 So it should return TRUE. 所以它应该返回TRUE。
Change your constructor function to this: 将构造函数更改为:
public function __construct(){
$this->db = new dbConnectClass();
$this->db->connectDatabase();
}
And there's an error on your SQL syntax. 并且您的SQL语法有错误。 Remove the
.
删除
.
from in front of $email
. 来自
$email
前面。
"SELECT EmailAddress FROM useryayong WHERE `EmailAddress` = '$email'";
I just remove isset($_POST['emailAdd']) ? $_POST['emailAdd'] : '';
我只是删除了
isset($_POST['emailAdd']) ? $_POST['emailAdd'] : '';
isset($_POST['emailAdd']) ? $_POST['emailAdd'] : '';
from $email
in my test.php
. 来自我的
test.php
$email
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.