を使用してクエリの後に ID を取得しようとしていますmysql_insert_id();
が、それでも 0 を取得しています。
- クエリ自体の後に配置し、
- ID (P_Id と呼ばれる) に AUTO_INCREMENT があることを確認しました。
以下のコード:
$con=mysqli_connect(-connectiondetails-);
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$sql="INSERT INTO clients (Name, Email, Address, Phone, Date, Service, ExtraOne, ExtraTwo, ExtraThree, ExtraFour, ExtraFive) VALUES ('$_POST[name]','$_POST[email]','$_POST[address]','$_POST[phone]','$_POST[date]','$_POST[service]','$_POST[extra1]','$_POST[extra2]','$_POST[extra3]','$_POST[extra4]','$_POST[extra5]')";
$idit = mysql_insert_id();
echo $idit;
if (mysqli_query($con,$sql))
{
}
else
{
echo "Error message goes here: " . mysqli_error($con);
}
「まあ、最初に実際にクエリを実行する必要があるかもしれません」と考えて、次のことを行いましたが、同じ結果が得られました。
$con=mysqli_connect(-connectiondetails-);
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$sql="INSERT INTO clients (Name, Email, Address, Phone, Date, Service, ExtraOne, ExtraTwo, ExtraThree, ExtraFour, ExtraFive) VALUES ('$_POST[name]','$_POST[email]','$_POST[address]','$_POST[phone]','$_POST[date]','$_POST[service]','$_POST[extra1]','$_POST[extra2]','$_POST[extra3]','$_POST[extra4]','$_POST[extra5]')";
if (mysqli_query($con,$sql))
{
$idit = mysql_insert_id();
echo $idit;
}
else
{
echo "Error message goes here: " . mysqli_error($con);
}
私がどこで間違ったのか分かりますか?他のスレッドを調べましたが、何も機能していないようです。ありがとうございます。
編集: mysql_insert_id(); を変更しました。mysqli_insert_id() へ; 今回は 0 すら返さず、ただ空白でした。
EDIT 2:ありがとうmbouzahir - あなたの解決策はうまくいきました:)