ご覧のとおり、次のコードがあります。2 つの INSERT ステートメントがあり、2 つのレコードが挿入されます。1 つは現在の日付、もう 1 つは -1 日です。問題は mysql_insert_id にあるようです。次のエラーが表示されます。
キー「PRIMARY」のエントリ「28」が重複しています
ID は両方のステートメントで同じままで、最初の「INSERT」も問題なく追加されているように見えます。問題は、2 番目のレコードを同じテーブルに追加しようとしている行にあります。スクリプトは次のとおりです。
<?
include("session.php");
include("database_common.php");
if (isset($campaignName) & isset($campaignRedirect)) {
$dataTable = 'qrData_'.$_SESSION['displayName'];
$statTable = 'qrStat_'.$_SESSION['displayName'];
$query = mysql_query("INSERT INTO ".$dataTable." VALUES(".mysql_insert_id($connection).", '".$campaignRedirect."', '".$campaignName."');", $connection);
$statBlank1 = mysql_query("INSERT INTO ".$statTable." VALUES(".mysql_insert_id($connection).", CURDATE() - INTERVAL 1 DAY, 0, '".$campaignName."');", $connection);
$statBlank2 = mysql_query("INSERT INTO ".$statTable." VALUES(".mysql_insert_id($connection).", CURDATE(), 0, '".$campaignName."');", $connection);
if ($statBlank1) echo "stat 1 ok";
else echo mysql_error($connection);
if ($statBlank2) echo "stat 1 ok";
else echo mysql_error($connection);
if ($query) die("<center>Kampaň úspešne vytvorená<br><br><button onclick='parent.jQuery.fancybox.close();' name='submit' class='btn btn-primary'>Zatvoriť</button></center>");
else die("<center>Vyskytla sa chyba. Prosím, zopakujte Vašu požiadavku.</center>");
}
?>
テーブル構造は次のとおりです。
`id` int(11) NOT NULL AUTO_INCREMENT,
`date` date DEFAULT NULL, `usageCount` int(11) DEFAULT NULL,
`campaign` varchar(45) DEFAULT NULL, PRIMARY KEY (`id`)
助言がありますか?