我有一段PHP代码,我获取表单数据,在数据库上执行DELETE,然后从表单中插入所有数据。
我想使用" transition"来提高此代码的安全性。在MySQL中尝试和捕获。因此,如果INSERT不顺利,则DELETE无效
这是我的代码:
$res = $conn->query("DELETE FROM `pm_buonipasto`
WHERE idprimanota = '$idprimanota'
AND tipologia = '$tipologiascelta' ");
if (!$res) {
printf("Errormessage: %s\n", $conn->error);
exit(0);
}
$insert = $conn->query("INSERT INTO `pm_buonipasto`
(`id`, `idprimanota`, `nome`,
`tipologia`, `prezzatura`, `qt`)
VALUES (NULL,'$idprimanota','$nome',
'$tipologia','$prezzatura','$qt')
");
if (!$insert) {
printf("Errormessage: %s\n", $conn->error);
exit(0);
}
如何使用MySQL事务进行提交和回滚?
答案 0 :(得分:0)
尝试这种方式:
mysql_query("BEGIN");
$query1 = mysql_query("YOUR MYSQL QUERY HERE");
$query2 = mysql_query("YOUR MYSQL QUERY HERE");
if ($query1 and $query2) {
mysql_query("COMMIT");
} else {
mysql_query("ROLLBACK");
}