フォームを使用して、データベースにデータを挿入しようとしていました。最初の SQL クエリには値の変数がありましたが、機能しませんでした。いくつかのことを試して mysqli_error を使用した後、問題を見つけることができませんでした。次に、すべての変数を文字列に置き換えましたが、データが挿入されません。
PHP の他のビットにネストされた以下のコードを試しましたが、動作しません。別のページで試してみましたが、うまくいきませんでした。そのため、すべてを削除して mysql_connect リンクと mysqli_query だけを残しましたが、それでも挿入されません。
これは私が得ているMySQLエラーです:
エラー - SQL 構文にエラーがあります。2行目のnear ''を使用する正しい構文については、MySQLサーバーのバージョンに対応するマニュアルを確認してください
以下の私のコードは次のとおりです。
$link = mysqli_connect("host", "username", "password", "database") or die("cannot connect"));
$try = mysqli_query($link,"INSERT INTO troubleshooting_files (`title`, `asset`, `image`, `category`, `file`)
VALUES ('title', 'asset', 'image', 'cat', 'file'");
//$try = mysqli_query($link,"INSERT INTO troubleshooting_users (`name`)
//VALUES ('title'");
if($try === false){
echo 'error - ';
echo mysqli_error($link);
} else{
echo 'all good';
}
1 つのフィールドだけを入力しようとしました。フィールド名に `s を付けずに試しました。別のテーブル名を試しましたが、うまくいきません。phpMyAdmin は、データをテーブルに適切に挿入します。また、サーバー上の別のディレクトリに、このデータベースにデータを正常に挿入する PHP コードがありますが、そのコードは現在も非推奨の mysql_query を使用しています。このサーバー上の行を別のデータベースに正常に挿入するコードもあります。PMA がデータを正常に挿入できれば、データベースは問題ないと思います。スクリプトの他の場所では、オブジェクトをフェッチしてテーブルを正常に更新できるため、他の mysqli_query は正常に動作します。