2012-06-03 40 views
2

我無法通過PHP獲取mysql事務。我對PHP相當陌生,對MySQL也很新穎。在PHP中執行事務時出現問題

如果我採用$ query的var_dump並嘗試通過phpmyadmin運行它,它工作正常。

$description = 
mysql_real_escape_string($_REQUEST['description']); 
    $query = 'BEGIN; 
    INSERT INTO indiespark.tasks 
(description, owner_user_id) 
VALUES ("' . $description . '", ' 
. $user->user_id . '); 
SET @task_id = LAST_INSERT_ID(); 
INSERT INTO indiespark.projecttasks 
(task_id, project_id) 
VALUES (@task_id, ' . $project->project_id . '); 
COMMIT;'; 
$result = mysql_query($query); 
var_dump($query); 
var_dump($result); 
if ($result) { 
    return viewproject(); 
} else { 
    throw new Exception('database error'); 
} 
+1

你好像有人願意學習。看看PDO或MySQLi。你使用的mySQL擴展是古老而過時的。 –

+0

好吧,我只是看着mysqli,所以忍受着我...... 替換 $ result = mysql_query($ query); 與: $ result = mysqli_query($ GLOBALS ['db'],$ query); 仍然不起作用。 –

+0

$ db上的var_dump顯示每個值爲空? –

回答

1

mysql_query不支持在一次調用中發送多個查詢。使用單獨的呼叫。