Php JoomLa更新查询不工作

Php JoomLa更新查询不工作,php,mysql,sql,joomla,Php,Mysql,Sql,Joomla,我是joomla和php的新手。我在joomla中的sql查询中遇到了问题,它没有更新表,并且给了我错误消息。我的最新查询是否有任何错误 这是我的密码: // Get default database object $db =JFactory::getDBO(); // Get a new JDatabaseQuery object $query = $db->getQuery(true); $tmpIds = array(); foreach($courseID as $cId){

我是joomla和php的新手。我在joomla中的sql查询中遇到了问题,它没有更新表,并且给了我错误消息。我的最新查询是否有任何错误

这是我的密码:

// Get default database object
$db =JFactory::getDBO();

// Get a new JDatabaseQuery object
$query = $db->getQuery(true);

$tmpIds = array();

foreach($courseID as $cId){

$tmpIds[]= $db->quote($cId);
 //sanitize the input

}

$courseID1 = implode(',',$tmpIds);
// Build the query
$query->select($db->quoteName('courseid'));
$query->from($db->quoteName('intake'));
$query->where($db->quoteName('campusid').'='. $db->quote($campusID));

 $query->where($db->quoteName('courseid').'IN('.$courseID1.')');

// Set the query for the DB oject to execute
$db->setQuery($query);
// Get the DB object to load the results as a list of objects
$results = $db->loadObjectList(); 

if($results){

$query = "UPDATE intake SET startdate = $from WHERE courseid = $courseID1 AND campusid = $campusID";
echo"$query";
$db->setQuery( $query );
$db->query();



}
else{ echo 'Error';}

}
我收到了这个错误消息

您的SQL语法有错误;检查手册 对应于您的MySQL服务器版本,以便使用正确的语法 第1行“TEST2”和campusid=Campus3”附近的SQL=更新摄入集 startdate=2014年6月5日,其中courseid='TEST1'、'TEST2'和campusid= 校园3


其中courseid是一个数组值,由其他表单通过复选框输入发布。

查询中的变量$courseID1变成

courseid = 'TEST1','TEST2'
本来应该

courseid in( 'TEST1','TEST2' )
另外,mysql的dateformat是错误的。试一试

$from=date('Y-m-d', strtotime($from));
$query = "UPDATE intake SET startdate = '$from' WHERE courseid in ( $courseID1 ) 
AND campusid = $campusID";

该错误消息是什么?请对字符串数据使用引号,如
SET startdate='“$startdate.”
而不是回显查询,请使用
echo$query->dump()
并粘贴到生成的查询中。此外,如果要启动新查询,请使用
$query->clear()
清空对象,或为新查询指定一个新名称。另外,不要忘记执行()更新。