0
私は1つのフォームを持っており、2つのテーブルにデータを(POST経由で)挿入しようとしています。 AUTO_INCREMENT ID
によって両方のテーブルをリンクする外部キーがあります。1つのフォームから2つのテーブルにポストするキーを持つMySQLi
私は広範囲にわたってサイトを検索し、すべての提案を試してみましたが、いずれもうまくいきませんでした。
私はこの問題は類似しているとは思いますが、正確ではないと思います。
は、ここに私のPHPです:あなたは私たちに、エラーメッセージを語ったか、正確にあなたのデータベーススキーマを説明していない
// Escape user inputs for security
$companyName = mysqli_real_escape_string($con, $_REQUEST['companyName']);
$companyAddress =mysqli_real_escape_string($con,$_REQUEST['companyAddress']);
$companyCity = mysqli_real_escape_string($con, $_REQUEST['companyCity']);
$companyState = mysqli_real_escape_string($con, $_REQUEST['companyState']);
$companyZip = mysqli_real_escape_string($con, $_REQUEST['companyZip']);
$companyPhone = mysqli_real_escape_string($con, $_REQUEST['companyPhone']);
$companyURL = mysqli_real_escape_string($con, $_REQUEST['companyURL']);
$contactName = mysqli_real_escape_string($con, $_REQUEST['contactName']);
$contactEmail = mysqli_real_escape_string($con, $_REQUEST['contactEmail']);
$contactPosition = mysqli_real_escape_string($con,$_REQUEST['contactPosition']);
// Attempt insert query execution
$sql1 = "INSERT INTO companyData (companyName, companyAddress, companyCity, companyState, companyZip, companyPhone, companyURL)
VALUES ('$companyName', '$companyAddress', '$companyCity', '$companyState', '$companyZip', '$companyPhone', '$companyURL')";
$sql2 = "INSERT INTO contactData (contactName, contactEmail, contactPhone, contactPosition)
VALUES ('$contactName', '$contactEmail', '$contactPhone', '$contactPosition')";
if (!mysqli_query($con,$sql1))
{
die('Error: ' . mysqli_error($con));
}
if (!mysqli_query($con,$sql2))
{
die('Error: ' . mysqli_error($con));
}
echo "<center><h1>Record updated successfully.<br>
Go <a href='data/form_companyinfo.php'>Here </a>Next</h1></center>";
うわー....それは速かった。返信いただきありがとうございます。 "エラー:行1における列 '企業ID' の範囲の値のうち" – Jawanaut
companyData 企業ID(AI) のcompanyName companyAddress companyCity companyState companyZip companyPhone companyURL 連絡先データ contactID(AI) CONTACTNAME CONTACTEMAIL contactPhone \t外部キー制約(INNODB) 'データベース' 'companyData'。 'companyID' 制約名: contact_id_fk_idx on DELTEカスケード on UPDATEいいえ – Jawanaut
companyIDのデータタイプと挿入しようとしている値を見てください。それはちょうどそれが言うことを意味するかもしれないかのように見えます。 https://dev.mysql.com/doc/refman/5.7/en/integer-types.html – David