2
我目前正在遵循一個關於在PHP/MySQL中創建論壇的教程......並試圖將它實現到我的CodeIgniter項目中。CodeIgniter - 使用事務插入多個表
我遇到了一個麻煩,我從來沒有處理過交易...我已閱讀codeigniters交易的文檔,但即時通訊並不真正理解它考慮我需要轉換的代碼。
我想知道是否有人可以拿下面的代碼,並把它變成Codeigniters事務代碼對我來說,我已經嘗試過自己做,但它使用多個表,我只是完全困惑。
任何幫助將是巨大的,代碼如下:
$query = "BEGIN WORK;";
$result = mysql_query($query)
if(!$result) {
echo 'An error has occured';
} else {
$sql = "INSERT INTO topics(t_subeject,date,cat) VALUES ($_POST['subject'],NOW(),$_POST['cat'])";
$result = mysql_query($sql);
if(!$result) {
echo 'An error has occured';
$sql = "ROLLBACK;";
$result = mysql_query($query)
} else {
$topid = mysql_insery_id();
$sql = "INSERT INTO posts(content, date) VALUES ($_POST['content'],NOW())";
$result = mysql_query($sql);
if(!$result) {
echo 'An error has occured';
$sql = "ROLLBACK;";
$result = mysql_query($sql);
} else {
$sql = "COMMIT;";
$result = mysql_query($sql);
echo 'Insert successful!';
}
}
}
嘿,感謝這..這使事情變得更輕鬆,在第一次查詢後,我將如何去獲得mysql_insert_id,另外,如果第一個查詢失敗,將它仍然運行第二個? – BigJobbies
編輯我的答案。 – DanMan
Ahhh完美...非常感謝你! – BigJobbies