我想,如果一個記錄犯規設i添加它,否則更新...但它不工作,什麼錯,此代碼:插入一條記錄,或者如果存在,那麼在MySQL行不通更新
<?php
$user_id=$_POST['user_id'];
$user_email="user_email";
$last_stage=$_POST['last_stage'];
$score=$_POST['score'];
$note=$_POST['note'];
$con=mysqli_connect("localhost","ferfer","Drfrj","ferfw");
$result = mysqli_query($con,"SELECT user_email FROM rating WHERE user_email='".$user_email."'");
$num_rows = mysqli_num_rows($result);
if ($num_rows > 0) {
//echo "exist";
mysqli_query($con,"UPDATE rating SET user_id=".$user_id.", user_email='".$user_email."', last_stage=".$last_stage.", score=".$score.", note='".$note."' WHERE user_email='".$user_email."'";
mysqli_close($con);
}else{
//echo "does not exist";
mysqli_query($con,"INSERT INTO rating(user_id, user_email, last_stage, score, note)VALUES (".$user_id.",'".$user_email."',".$last_stage.",".$score.",'".$note."') ");
mysqli_close($con);
}
?>
不起作用?你有什麼錯誤嗎? – 2013-04-30 07:24:27
你是什麼意思?不工作意味着不更新或不插入? – DevT 2013-04-30 07:25:02
爲什麼你要做多個查詢?使用INSERT OR ON DUPLICATE KEY UPDATE像這樣:INSERT INTO tblclientoptions(ClientID,LateTarget)VALUES($ lid,$ latetarget)ON DUPLICATE KEY UPDATE LateTarget = $ latetarget' – Dave 2013-04-30 07:28:47