一个function 传进来一个参数 里面执行了一个insert语句 但是 数据库里却有两条记录怎么回事

解决方案 »

  1.   

    函数只调用一次的看这里代码$hooks_array = array('register_success' => 'register_ok');
    public function register_ok($param_ary)
    {
    global $db, $template, $phpEx, $userdata, $config;

    $sql = "SELECT * FROM " . USERS_TABLE . " WHERE user_id = " . $param_ary['user_id'];
    $result = $db->sql_query($sql);
    $row = $db->sql_fetchrow($result);
    if($row['user_email'] == '')
    {
    $row['user_email'] = $row['tb_buyer_nick'];
    }else{}
    $email=$row['user_email'];
    $row1 = '新用户注册成功!';
    $states = '登录成功!';
    $sql = "INSERT INTO " . LOG_REGISTER . " VALUES('','" . $email         ."',".time().",'".$row1."','".$states."')" ; 
    $db->sql_query($sql); }
    但是每次注册的时候都有两条相同的记录插入到数据库
      

  2.   

    else{}
                $email=$row['user_email'];
                $row1 = '新用户注册成功!';
                $states = '登录成功!';
                $sql = "INSERT INTO " . LOG_REGISTER . " VALUES('','" . $email         ."',".time().",'".$row1."','".$states."')" ; 
                $db->sql_query($sql);
    你的else{} 应该包含到
                $email=$row['user_email'];
                $row1 = '新用户注册成功!';
                $states = '登录成功!';
                $sql = "INSERT INTO " . LOG_REGISTER . " VALUES('','" . $email         ."',".time().",'".$row1."','".$states."')" ; 
                $db->sql_query($sql);
    这些内容吧?