PHP MySql - 检查列B是否与GET输入匹配

时间:2014-04-13 04:56:38

标签: php mysql

我有一个包含两列的数据库表: EMAIL_ADDRESS ACTIVATION_CODE

我需要让脚本检查用户在URL中提交的激活码是否与表中的电子邮件地址匹配。到目前为止,这不起作用。

$email = mysql_real_escape_string($_GET['email']);
$acticode = mysql_real_escape_string($_GET['code']);

$result = mysql_query("SELECT * FROM xActivate WHERE EMAIL_ADDRESS='$email',1");

if ($result = '$acticode') {
   echo 'Code is valid';
} else {
   echo 'Code is NOT valid';
}

2 个答案:

答案 0 :(得分:1)

使用mysql_num_row

检查行
if(mysql_num_rows($result)>0){...}

并使用

检查有效代码
if(mysql_error())

答案 1 :(得分:0)

您需要知道数据库中存储代码的列,您还需要实际获取数据

$email = mysql_real_escape_string($_GET['email']);
$acticode = mysql_real_escape_string($_GET['code']);

$code_found = false;
$result = mysql_query("SELECT * FROM xActivate WHERE EMAIL_ADDRESS='$email',1");
if($result) {
  $row = mysql_fetch_assoc($result);
  if($row) {
    if ($row['codefield'] == $acticode) {
        $code_found = true;       
    }

  }
}

if($code_found) {
   echo 'Code is valid';
} else {
   echo 'Code is NOT valid';
}