$datos = explode(';',$linea);
$product_ean = trim($datos[0]);
$product_price = trim($datos[1]);
$name_es = trim($datos[2]);
$short_description_es = trim($datos[3]);
echo $product_ean,'<br>';
echo $product_price,'<br>';
echo $name_es ,'<br>';
echo $short_description_es,'<br>';
$db = JFactory::getDbo();
$query = $db->getQuery(true);
$columns = array('product_id' ,'product_ean', 'product_price', 'name_es-ES', 'short_description_es-ES');
$values = array(NULL, $product_ean, $product_price, $name_es, $short_description_es);
$query
->insert($db->quoteName('vrg_jshopping_products'))
->columns($db->quoteName($columns))
->values(implode(',', $values));
$db->setQuery($query);
$db->execute();
Ошибка при отображении страницы об ошибке: Application Инстанцирование Ошибка: У Вас есть ошибка в вашем SQL синтаксиса; проверьте руководство, которое соответствует версии сервера MySQL для правильного синтаксиса, чтобы использовать рядом с '600,1000, articulo нуэво 1, Articulo де тест 1)' в строке 3У меня есть ошибка в joomla - запрос пожалуйста. У меня есть и ошибка в этом запросе
SQL = INSERT INTO vrg_jshopping_products
(product_id
, product_ean
, product_price
, name_es-ES
, short_description_es-ES
) VALUES (, 600,1000, articulo Каюты 1, Articulo де тест 1)
Попробуйте использовать 0 вместо Null для значений или просто выньте поле/значения из массивов и дайте ему автоинкремент. Также используйте #__ вместо жесткого кодирования префикса. – Elin
например: ?? please => .use #__ вместо hardcoding префикс. - – Edgargmc
'vrg_jshopping_products' должно быть' #__ jshopping_products' .. но вы можете видеть из сообщения об ошибке, что проблема в том, что вы вставляете 4 значения в 5 полей и имеете дополнительную запятую (из-за нулевого значения). – Elin