0

簡単な入力があり、MySQL のサポートが必要です。

送信ボタンをクリックすると、PHP は行が既に存在するかどうかを確認し、存在しない場合にのみ新しい行を挿入する必要があります。

そのINSERT部分は知っていますが、行が既に存在するかどうかを確認する方法がわかりません。

4

3 に答える 3

2

INSERT IGNORE既に存在する場合は何もしないか、ON DUPLICATE KEY UPDATE挿入の試行時にフィールドを更新するために使用します。

編集

存在するかどうかを確認する場合は、最初に SELECT を実行しSELECT * FROM TABLE WHERE ...て行をカウントSELECT COUNT(*) FROM TABLE WHERE ...するか、カウントが 0 より大きいかどうかを確認します。存在する場合は、ユーザーにメッセージを送信します。そうでない場合は、先に進んで挿入してください。

于 2013-10-11T20:26:53.477 に答える
1
$result = mysqli_query($con,"SELECT email FROM user WHERE email='".$email."'");
$count=mysqli_num_rows($result);
if($count==0)  {
$sql="INSERT INTO user (email)VALUES('".$email."')";
if (!mysqli_query($con,$sql))
{
die('Error: ' . mysqli_error($con));
}
header('Location:login.php');
}
else
{ 
echo 'already exist';
}

これを試してください

于 2013-10-11T21:01:37.757 に答える
-2

エントリが既に存在するかどうかを確認する必要はなく、単に phpmyadmin とその特定のテーブルに移動し、そのエントリに一意に設定され、それが設定されています。

于 2014-03-22T07:15:07.083 に答える