我的数据库中有两个表,TBMEMBERS& TBCOUPON。第一个表格有两个字段" Id
(自动增量)& member
"另一个是" coupon_code
"。
我想要的是我必须通过表格输入会员和优惠券代码的情况,它会检查会员和会员是否coupon_code存在于各自的表中。如果是,它将登录并显示详细信息。
我有以下代码行,但我继续让"成员不存在错误"
tbmembers
Id Member 1 Taylor 2 Connor
Tbcoupon
Coupon_code 12345 54321
我的代码:
$sql = "SELECT member, coupon_code
FROM tbmembers,
tbcoupon
WHERE member = '" . $formfield1 . "' OR coupon_code = '" . $formfield2 . "';";
$result_of_login_check = $this->db_connection->query($sql);
// if this user exists
if ($result_of_login_check->num_rows == 1) {
// get result row (as an object)
$result_row = $result_of_login_check->fetch_object();
// write user data into PHP SESSION
$_SESSION['member'] = $result_row->member;
$_SESSION['user_login_status'] = 1;
} else {
$this->errors[] = "Wrong coupon_code. Try again.";
}
} else {
$this->errors[] = "This user does not exist.";
}
} else {
$this->errors[] = "Database connection problem.";
}
}
}
我知道表格之间需要匹配,但在这种情况下,任何会员都可以选择任何coupon_code,因此没有coupon_code链接到特定会员。
我的意图是不可能使用mysql& PHP?
答案 0 :(得分:0)
您的查询应该是这样的(根据您的问题):
"SELECT member, coupon_code
FROM tbmembers, tbcoupon
WHERE member = '" . $formfield1 . "' AND coupon_code = '" . $formfield2 . "' ";
你的if条件应该是:
if ($result_of_login_check->num_rows > 0){
//get result, set login status as 1 etc
} else{
//Wrong coupon code or user does not exist error
}