1

修繕!問題は、通常の接続とは別にPDOへの接続を初期化する必要があることを知らなかったことです。

$dbh = new PDO('mysql:host=localhost;dbname=test', $user, $pass);

私はセキュリティの目的とちょうど良い習慣のためにPDOを学ぼうとしています。これは、挿入クエリをPDOに変換する方法について正しいですか?動作していないようです。$ dbhは、サーバーへの接続が正しい必要がありますか?

     $stmt = $dbh->prepare("INSERT INTO users (social_id, name, email, social_network, profile_pic) VALUES (:social_id, :name, :email, :social_network, :profile_pic)");
                        $stmt->bindParam(':social_id', $social_id);
                        $stmt->bindParam(':name', $name);
                        $stmt->bindParam(':email', $email);
                        $stmt->bindParam(':social_network', $social_network);
                        $stmt->bindParam(':profile_pic', $profile_pic);

                        // insert one row
                        $stmt->execute(); 

                        $user_id = $dbh->lastInsertId();    

これから:

                          mysql_query("INSERT INTO users (social_id, name, email, social_network, profile_pic)
                                            VALUES ('$social_id', '$name','$email', '$social_network','$profile_pic')");                

                            $user_id = mysql_insert_id();
4

1 に答える 1

0

問題は、通常の接続とは別にPDOへの接続を初期化する必要があることを知らなかったことです。

$dbh = new PDO('mysql:host=localhost;dbname=test', $user, $pass);
于 2012-06-24T17:30:09.437 に答える