PHP / MySQLi中的大量参数绑定

时间:2012-09-19 05:23:41

标签: php mysql web-applications mysqli prepared-statement

大家好,

我知道一个事实下面看起来很愚蠢(也很有趣),但这是我以前在mysql时代所做的事情(一个巨大的查询,所有变量都被卡住了),我不确定如果这是在mysqli中做到这一点的正确方法,但我肯定在这里做错了,因为这个块 执行

if($query_rows == 0){
                $pass_hash = hash("sha512", $reg_pass);
                if($prep_stmt = $mysqli->prepare("INSERT INTO accounts (username, password, user_type, 
                first_name, last_name, gender, expr_rating, user_rank, rank_type, user_expr, user_legion,
                num_hosted, num_attended, email, premium_status, premium_credits, location_city, 
                user_sex_interest) VALUES (?, ?, 0, ?, ?,
                ?, 0, 1, 1, 0, 1, 0, 0, ?, 0, 0, 'waterloo', ?)"))                    
                    { 
                        // Oh my gawd -.-
                        $prep_stmt->bind_param("ssssisi", $reg_user, $pass_hash, $reg_fname, $reg_lname,
                        $reg_gender, $reg_email, $reg_sexint);

                        $prep_stmt->execute();

                        $err = $mysqli->error;
                        echo($err);
                        echo($mysqli->error);

                    } else {
                        if(DEVMODE){ // devmode is enabled
                            $err = $mysqli->error;
                            echo($err);        
                            echo($mysqli->error);                        
                            echo("derp"); exit();
                        } else {
                            $stop = true; header("Location : error.php?id=99");
                        }
                    }        
                } 

:P在这里帮助一个noobie!谢谢大家!

1 个答案:

答案 0 :(得分:0)

SOOO MUCH DERP:D

这解决了所有问题

$prep_stmt->close();

然后做任何需要的事情

再见世界:D