有一个noob日。
出于某种原因,这有效:
// check for user in db
$result = $connector->query('SELECT username FROM wallart_users
WHERE username ="test@testmail.com");
if (mysql_num_rows($result) == 0) {
////// ADD NEW USER
但这不是:
$payer_email = mysql_real_escape_string($payer_email);
// check for user in db
$result = $connector->query('SELECT username FROM wallart_users
WHERE username ='.$payer_email);
if (mysql_num_rows($result) == 0) {
////// NEW USER
第一个匹配并在页面下方向我发送
第二个不匹配(有或没有转义)并尝试创建具有相同凭据的新用户(然后因用户已存在而失败)。
PayPal发送的电子邮件地址始终相同,数据库包含正确的地址
我在这个过程中将两个地址写入了一个日志文件,它们看起来完全相同。
答案 0 :(得分:0)
'SELECT username FROM wallart_users WHERE username ="'.$payer_email.'"';
答案 1 :(得分:0)
此代码
$result = $connector->query('SELECT username FROM wallart_users
WHERE username ='.$payer_email);
应该是
$result = $connector->query("SELECT username FROM wallart_users
WHERE username ='$payer_email' ");
答案 2 :(得分:0)
你不认为你的第二个查询有问题吗?你应该像这样改变你的查询
$result = $connector->query('SELECT username FROM wallart_users WHERE username ="'.$payer_email.'"');