$result=mysql_query("UPDATE vip set time='".$intime."'"." where user='".$uid."' and ". "setype='".$usetype."'"); if (!$result){ echo "///0///"; mysql_query("ROLLBACK"); return; }
$result=mysql_query("UPDATE addcard set time=curdate()".",userw='".$uid."',sev='".$usetype."' where card='".$card."'"); if (!$result){ echo "///0///"; mysql_query("ROLLBACK"); return; } mysql_query("COMMIT");
$result=mysql_query("UPDATE vip set time='".$intime."'"." where user='".$uid."' and ". "setype='".$usetype."'") or die(mysql_error()); if (!$result){ $err = true; }
$result=mysql_query("UPDATE addcard set time=curdate()".",userw='".$uid."',sev='".$usetype."' where card='".$card."'") or die(mysql_error()); if (!$result){ $err = true; } if($err) { mysql_query("ROLLBACK"); } mysql_query("COMMIT");
mysql_query("BEGIN");
mysql_query("SET AUTOCOMMIT=0");
$result=mysql_query("UPDATE vip set time='".$intime."'"." where user='".$uid."' and ". "setype='".$usetype."'");
if (!$result){
echo "///0///";
mysql_query("ROLLBACK");
return;
}
$result=mysql_query("UPDATE addcard set time=curdate()".",userw='".$uid."',sev='".$usetype."' where card='".$card."'");
if (!$result){
echo "///0///";
mysql_query("ROLLBACK");
return;
}
mysql_query("COMMIT");
完成 后要不要再设定为1
$err = false;
mysql_query("BEGIN");
$result=mysql_query("UPDATE vip set time='".$intime."'"." where user='".$uid."' and ". "setype='".$usetype."'");
if (!$result){
$err = true;
}
$result=mysql_query("UPDATE addcard set time=curdate()".",userw='".$uid."',sev='".$usetype."' where card='".$card."'");
if (!$result){
$err = true;
}
if($err) {
mysql_query("ROLLBACK");
}
mysql_query("COMMIT");
事务是对一组指令而言的,只有一组指令都成功了,才算成功另外,你执行的是 update 指令,$result 只在指令写错时才会为假
应该无论无何都不修改才对,但是第二条修改却成功了
其实我就是想看下事务的效果
可能是服务器程序的原因,这个空间中用MYSQL的时间函数取出来的时间竟然是在1到3个小时的的范围内变动的,而且并不是每次都变动,这两个随机明显是有问题的
mysql_query("SET AUTOCOMMIT=0");
$err = false;
mysql_query("BEGIN");
$result=mysql_query("UPDATE vip set time='".$intime."'"." where user='".$uid."' and ". "setype='".$usetype."'") or die(mysql_error());
if (!$result){
$err = true;
}
$result=mysql_query("UPDATE addcard set time=curdate()".",userw='".$uid."',sev='".$usetype."' where card='".$card."'") or die(mysql_error());
if (!$result){
$err = true;
}
if($err) {
mysql_query("ROLLBACK");
}
mysql_query("COMMIT");