PHP IF ELSE语句

PHP IF ELSE语句,php,mysql,Php,Mysql,我的页面中有下面的语句,它似乎没有被处理,有人能看到我遗漏的任何明显错误吗 else{ if($usersClass->register($_POST['produgg_username'], md5($_POST['produgg_password']), $_POST['produgg_email'], $randomkey)) { print "success"; $toemail = $_POST['produgg_email'];

我的页面中有下面的语句,它似乎没有被处理,有人能看到我遗漏的任何明显错误吗

else{
    if($usersClass->register($_POST['produgg_username'], md5($_POST['produgg_password']), $_POST['produgg_email'], $randomkey)) 
    {
        print "success";
        $toemail = $_POST['produgg_email'];
        $touser = $_POST['produgg_username'];
        // Send activation email 
         $to = $toemail;
         $subject = "Activation";
         $headers = "From: support@.co.uk";
         $body = "Howdy $touser!";

        mail($to, $subject, $body, $headers);

        if(isset($_POST['r']) {
                        $refcode = mysql_real_escape_string($_POST['r']);
                        mysql_query(" UPDATE produgg_users SET credits=credits+200000 where produgg_users.id = ".$refcode or die(mysql_error());

                        };


    }else{
        print "error!";
    }
} 
如果不知道$usersClass->register返回的是什么,就很难判断出哪里出了问题。出于调试目的,我建议您尝试以下方法:

var_dump($_POST);
$_test = $usersClass->register($_POST['produgg_username'], md5($_POST['produgg_password']), $_POST['produgg_email'], $randomkey);
var_dump($_test);
// proceed on with your if statement.

确保你看到了你期望看到的东西。开发代码中的一些echo不会伤害任何人,只要确保为了发布目的将其删除即可。

这一行将出错:

 mysql_query(" UPDATE produgg_users SET credits=credits+200000 where produgg_users.id = ".$refcode or die(mysql_error());
应该是

mysql_query(
  "UPDATE produgg_users SET credits=credits+200000 where produgg_users.id = ".$refcode) 
   or die(mysql_error());

isset函数缺少右括号

if( isset($_POST['r']) ) {
    $refcode = mysql_real_escape_string($_POST['r']);
    mysql_query(" UPDATE produgg_users SET credits=credits+200000 where produgg_users.id =    ".$refcode or die(mysql_error());
};

你想让我在$usersClass->register实际返回的内容上掷硬币吗?代码被剪切在顶部。你需要显示整体,包括外部的if语句,否则我会说else永远不会被称为外部的。