2014-10-03 4 views
0

Я пытаюсь вставить значения в моей базе данных, и я следовал учебник Joomla MVC как found here, но я получаю следующее сообщение об ошибке SQL:Обновление MySQL строки таблицы с Joomla MVC,

1054 Unknown column '$client' in 'field list' SQL=INSERT INTO `p9e2i_webfoot_photo_studio_photos` (`client`,`url_name`,`file_name`) VALUES ($client,$temp_name,$file1_name) 

я 100 Вероятно, в этой базе данных есть столбцы client, url_name и file_name. Полный запрос выглядит так:

$db = JFactory::getDbo(); 
$query = $db->getQuery(true); 
$columns = array('client', 'url_name', 'file_name'); 
$values = array('$client', '$temp_name', '$file1_name'); 
$query 
    ->insert($db->quoteName('#__webfoot_photo_studio_photos')) 
    ->columns($db->quoteName($columns)) 
    ->values(implode(',', $values)); 
$db->setQuery($query); 
$db->query(); 

Может кто-нибудь помочь мне идентифицировать синтаксическую ошибку? Я часами просматривал Google и Stack Exchange и не мог заставить мои переменные вставляться в БД. Спасибо.

ответ

1

Вы должны избежать ваших ценностей, как так:

$values = array(
     $db->quote($client), 
     $db->quote($temp_name), 
     $db->quote($file1_name) 
); 

Так просто замените вы $values массива с указанным кодом.

Кроме того, я не уверен, что Joomla версия вы используете, но если вы используете 3.x, то замените:

$db->query(); 

с:

$db->execute(); 

Надеется, что это помогает

+0

Большое спасибо! Я использовал ваши изменения, и все хорошо сейчас! – BradM

+0

Добро пожаловать, рад, что это сработало :) – Lodder