1

ユーザーの単純な挿入ステートメントを作成しようとしています...しかしエラーが発生します...値のみで試行しましたが、機能します。挿入ステートメント内の配列を処理する方法と同じである必要がありますか?

何か案は?

                if ($new_user_data) {
                    $mysqli->query("INSERT INTO users (user_name, user_year, user_sex, user_pic, user_level, user_password, user_email)
                                    VALUES ( ". $new_user_data['user_name'] .",". $new_user_data['user_year'] .",". $new_user_data['user_sex'] .",". $new_user_data['user_pic'] .",1,". $new_user_data['user_password'] .",". $new_user_data['user_email'] ." )");
                    print_r($mysqli->error);
                }

エラー:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '@gmail.coms )' at line 2
4

1 に答える 1

3

文字列を引用符で囲む必要があります。

$mysqli->query("INSERT INTO users (user_name, user_year, user_sex, user_pic, user_level, user_password, user_email)
                VALUES ( '". $new_user_data['user_name'] ."','". $new_user_data['user_year'] ."','". $new_user_data['user_sex'] ."','". $new_user_data['user_pic'] ."',1,'". $new_user_data['user_password'] ."','". $new_user_data['user_email'] ." )'");

私はあなたのコードのすべてを見ることができないことを知っています、しかしあなたはSQLインジェクションに広くオープンであるように見えます。

于 2013-02-21T15:34:12.150 に答える