1

新しいユーザーをデータベースに追加する単純な INSERT ステートメントを作成しようとしていますが、機能していません。つまり、テーブルに挿入しようとしているデータが挿入されません。この問題のトラブルシューティングを何時間も試みましたが、成功しませんでした。挿入ステートメントを書き込もうとしているのは以下のとおりです。私には正しいように見えるので、トラブルシューティングが困難です。挿入ステートメントのすべての列がテーブルに存在し、その正確な順序になっています。何が問題なのかアドバイスいただけると助かります。

私のつながり

//Create mysql connect variable
$conn = mysql_connect('1122334455.host.com', 'john', 'password');

//kill connection if error occurs
if(!$conn){

    die('Error: Unable to connect.' . '<br>' . mysql_error());
}
//connect to mysql database
mysql_select_db("jefffffff89", $conn);

これまでに試した INSERT ステートメント:

試行 1:

mysql_query("INSERT INTO users (id, email, company-name, city, state, phone, password, first, last)
           VALUES('','hello@gmail.com','johnnys inc','main','NY','443-333-3444','1234567','matt','williams')",$conn);

試行 2:

$query = "INSERT INTO users (id, email, company-name, city, state, phone, password, first, last)
               VALUES('','hello@gmail.com','johnnys inc','main','NY','443-333-3444','1234567','matt','williams')";
        mysql_query($query,$conn);

次のように次のテーブルにレコードを簡単に追加できましたが、問題なく動作します (したがって、同じロジックに従って上記の挿入を行いましたが、正常に挿入されません)。

mysql_query("INSERT INTO log (log_id, txn_id, email) VALUES('','hello','world')", $conn);       
4

1 に答える 1

1

列名の 1 つにハイフンが含まれています:

mysql_query("INSERT INTO users (id, email, company-name, city, ...");

それが意図的であると仮定すると、バッククォートでエスケープする必要があります。

mysql_query("INSERT INTO users (id, email, `company-name`, city, ...");
#                                          ^            ^

ただし、列をハイフンを含まない名前に変更することをお勧めします。

于 2012-07-04T22:04:46.487 に答える