存在性查询检查-PHP
我试图通过运行查询检查来测试我的数据库中是否存在电子邮件地址 我可以很好地连接到数据库 然而不管怎样,即使电子邮件存在,它返回的邮件也不存在存在性查询检查-PHP,php,mysql,database,Php,Mysql,Database,我试图通过运行查询检查来测试我的数据库中是否存在电子邮件地址 我可以很好地连接到数据库 然而不管怎样,即使电子邮件存在,它返回的邮件也不存在 <?php //----------------------------------------------------------------------------------// //Setup require_once('SB_Constants.php'); //--------------------------------------
<?php
//----------------------------------------------------------------------------------//
//Setup
require_once('SB_Constants.php');
//----------------------------------------------------------------------------------//
//Connect to the database
//----------------------------------------------------------------------------------//
$connection = mysqli_connect(DATABASE_HOST, SAVE_USERNAME, SAVE_PASSWORD, DATABASE_NAME);
// check the connection was successful
if (mysqli_connect_errno($connection)) {
header('HTTP/1.0 500 Internal Server Error', true, 500);
die(FailedToAccessDatabase . ". Failed to connect to Database");
} else {
echo "Connection Success!";
}
//Query Check
$assessorEmail = mysqli_query($connection, "SELECT email_address FROM assessorID WHERE email_address = 'ryan@ablah.com'");
if (mysqli_num_rows($query_identifier) == 0) {
die(UnregisteredAssessor . ". Doesn't Exist");
} else {
// Exists
echo "Exists getting ace id.";
//Get the assessor ID
$result = mysqli_query($connection, "SELECT ace_id FROM assessorID WHERE email_address = 'ryan@blah.com'");
echo $result;
}
/* close connection */
mysqli_close($connection);
?>
对这个问题有什么想法吗 各种各样的错误。修正:
$assessorEmail = mysqli_query($connection, "SELECT ace_id,email_address FROM assessorID WHERE email_address = 'ryan@ablah.com'");
if (mysqli_num_rows($assessorEmail) == 0) {
die(UnregisteredAssessor . ". Doesn't Exist");
} else {
// Exists
echo "Exists getting ace id.";
//Get the assessor ID
$result = mysqli_fetch_assoc($assessorEmail);
echo $result['ace_id'];
}
您的问题是mysqli\u num\u rows$query\u标识符正在访问未定义的变量,而不是$assessorEmail
此外,如果只需要ace_id,则只需要一个查询:
如果mysqli_num_rows$assessorEmail返回一行,则该电子邮件存在,并且您已经拥有ace_id
缺少一个i:mysql_num_rowsy您将mysql_*函数与mysqli_*函数混合在一起$query_标识符永远不存在declared@colburton锐利的眼睛!,刚刚更正-但是仍然有问题如果你打开一个不同的工具,比如,如果你可以使用phpMyAdmin或MySQL工作台工具运行查询,你会得到结果吗?我会对此进行评论,而不是完成我的。mysqli_num_rows正在检查一个未定义的变量$query_标识符。@colburton不知道,但你是对的,非常感谢!:
$assessorEmail = mysqli_query($connection, "SELECT ace_id FROM assessorID WHERE email_address = 'ryan@ablah.com'");
while(mysqli_fetch_assoc($assessorEmail) = $row) {
echo $result['ace_id'];
}