Я переместил сайт с сервера, на котором установлен сервер MySQL, на другой сервер, на котором установлена версия сервера MariaDB, и сайт работал без проблем на старом сервере
Но на новом я получил эту ошибку:
1064 В вашем синтаксисе SQL есть ошибка;проверьте руководство, соответствующее вашей версии сервера MariaDB, на предмет правильного синтаксиса для использования рядом с «строками ОТ #__whmportfolio_item
КАК ГДЕ a.cate in (4)» в строке 1
это помощниккод модуля:
<?php
class ModWhmPortfolioHelper
{
public static function toggleVoteAjax() {
$db = JFactory::getDbo();
$u = WhmportfolioFrontendHelper::getUid();
$pfid = JRequest::getInt('pfid', 0);
if(!$pfid) {
return null;
}
$rs = $db
->setQuery("SELECT id FROM #__whmportfolio_liked WHERE u = '{$u}'")
->loadObject();
if(is_null($rs)) {
$db
->setQuery("INSERT INTO #__whmportfolio_liked(pfid, u) VALUES ({$pfid}, '{$u}')")
->execute();
}
else {
$db
->setQuery("DELETE FROM #__whmportfolio_liked WHERE id = {$rs->id}")
->execute();
}
return $db
->setQuery("SELECT count(*) as c FROM #__whmportfolio_liked WHERE u = '{$u}'")
->loadObject()->c;
}
public static function getItems($cate, $tag, $offset, $limit, $isize='0x0'){
$db = JFactory::getDbo();
$uid = WhmportfolioFrontendHelper::getUid();
$where = "";
if($tag || $cate) {
$where = "WHERE ";
if($tag) {
$tag = implode(',', $tag);
$where .= "a.tag in ({$tag})";
}
if($tag && $cate) {
$where .= " AND ";
}
if($cate) {
$cate = implode(',', $cate);
$where .= "a.cate in ({$cate})";
}
}
$q = 'SELECT DISTINCT a.*,'.
"(select count(*) from #__whmportfolio_liked as l where l.pfid = a.id) as cliked,".
"(select count(*) from #__whmportfolio_liked as l where l.u = '{$uid}') as lactive
FROM `#__whmportfolio_item` AS a
{$where}
ORDER BY a.id DESC";
$rs = $db->setQuery($q, $offset, $limit)->loadObjectList();
if(is_null($rs)) return 0;
foreach($rs as &$item) {
WhmportfolioFrontendHelper::build($item, $isize);
}
$q = "SELECT DISTINCT count(*) as rows FROM `#__whmportfolio_item` AS a {$where}";
return (object)array('items'=>$rs, 'total'=>$db->setQuery($q)->loadObject()->rows);
}
}
?>