2015-07-01 136 views
0

我有一個表單,用戶可以添加課程,當用戶單擊編輯按鈕時,他被重定向到另一個頁面,以修改表單中的數據。但是當用戶點擊保存按鈕時,什麼都不會發生。出現空白頁面。在正常情況下,「成功」需要出現在頁面上。Moodle SQL更新數據庫中的特定記錄不工作

代碼它處理的更新查詢:

<?php 

require_once(dirname(dirname(dirname(__FILE__))) . '/config.php'); 

global $DB; 

$id = required_param('facid', PARAM_TEXT); 
$name = required_param('name', PARAM_TEXT); 
$course_detail = required_param('course_detail', PARAM_TEXT); 
$course_outline = required_param('course_outline', PARAM_TEXT); 
$course_obj = required_param('course_obj', PARAM_TEXT); 
//$programme = required_param('programme', PARAM_TEXT); 

$update = $DB->execute_sql("UPDATE {courses} SET name = '$name' AND course_detail = '$course_detail' WHERE id = '$id'"); 

if(!$update) 
{ 
    echo "Could not update"; 
} 

else 
{ 
    echo "Successful"; 
} 

?> 

我可以理解的SQL語句是錯誤的,但我似乎無法修復它,因爲它是從我學到的PHP代碼完全不同。我也試過檢查這個link,但似乎無法找到答案。我是Moodle的新手。
請幫忙嗎?

回答

0

我終於可以解決它,所以我想爲未來的新Moodle開發者發佈答案。

代碼:

<?php 

require_once(dirname(dirname(dirname(__FILE__))) . '/config.php'); 

global $DB; 

$id = required_param('facid', PARAM_TEXT); 
$name = required_param('name', PARAM_TEXT); 
$course_detail = required_param('course_detail', PARAM_TEXT); 
$course_outline = required_param('course_outline', PARAM_TEXT); 
$course_obj = required_param('course_obj', PARAM_TEXT); 
//$programme = required_param('programme', PARAM_TEXT); 

$record = new stdclass; 
$record->id = $id; 
$record->name = $name; 
$record->course_detail = $course_detail; 
$record->course_outline = $course_outline; 
$record->course_obj = $course_obj; 


$sql = $DB->update_record('courses', $record); 


if(!$sql) 
{ 
    echo "Could not update"; 
} 

else 
{ 
    echo "Successful"; 
} 

?>