0

Web サイトのサインアップ フォームを作成しようとしていますが、SQL クエリでエラーが返されます

$sql failed: 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 ''username','password','forename','surname','title') VALUES ('f','f','f','f','f')' at line 1

これはsignupaction.phpの私のコードです:

<?php 
include('connect.php');
$username=$_POST["forename"];
$password=$_POST["surname"];
$forename=$_POST["username"];
$surname=$_POST["password"];
$title=$_POST["title"];
$sql = "INSERT INTO users ('username','password','forename','surname','title') VALUES ('$username','$password','$forename','$surname','$title')";
$result = mysql_query($sql, $link)  or exit('$sql failed: '.mysql_error());
echo($result);
?>

これが機能しない理由がわかりません。アドバイスをいただければ幸いです。ありがとう!

4

2 に答える 2

1

フィールドの名前を一重引用符で囲む必要はありません。そのままにしておくか、バックティックを使用することができます。引用符を使用すると、mysql は文字列を扱っていると認識します。

このようなことを試してください -

$sql = "INSERT INTO users (username,password,forename,surname,title) VALUES  
        ('$username','$password','$forename','$surname','$title')";
于 2013-02-20T17:55:09.873 に答える
0

SQL ステートメントの最初のかっこのセットでフィールド名を引用しないでください。

そしてmysqliに切り替え!生活を楽にします。

于 2013-02-20T19:14:07.697 に答える