Форум программистов, компьютерный форум, киберфорум
Наши страницы
Joomla
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
iceworm
0 / 0 / 0
Регистрация: 09.10.2012
Сообщений: 1
1

Не выполняется запрос к базе

12.10.2012, 16:07. Просмотров 1079. Ответов 2
Метки нет (Все метки)

пишу импорт для jshopping (joomla) не хватает только присвоения категорий товаров... Делаю с помощью запроса, но видно чего-то не понимаю или что-то не выходит...
Вот такой момент
PHP
1
2
3
4
$iii == intval($row[1]);
$eee == intval($row[5]);
$query ="INSERT INTO `#__jshopping_products_to_categories` (`product_id`, `category_id`, `product_ordering`) VALUES ({$iii}, {$eee}, 1)";
$db->setQuery($query);
Примерно этим кодом пытаюсь запихать в products_to_categories категории в соответствии с айди продукта...
После выполнения импорта все товары появляются, но эта таблица вообще не меняется... при чем переменные пытался менять просто на числа: VALUES (10, 15, 1)... Но всё равно ничего...
Подскажите добрые люди, что может вызывать такие проблемы?...
Код ниже... Если что-то ещё нужно пишите, рад любым мыслям...
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
<?php
defined( '_JEXEC' ) or die( 'Restricted access' );
jimport('joomla.filesystem.folder');
 
class IeSimpleImport extends IeController{
    
    function view(){
        $jshopConfig = JSFactory::getConfig();
        $ie_id = JRequest::getInt("ie_id");
        $_importexport = JTable::getInstance('ImportExport', 'jshop'); 
        $_importexport->load($ie_id);
        $name = $_importexport->get('name');                        
            
        JToolBarHelper::title(_JSHOP_IMPORT. ' "'.$name.'"', 'generic.png' ); 
        JToolBarHelper::custom("backtolistie", "back", 'browser.png', _JSHOP_BACK_TO.' "'._JSHOP_PANEL_IMPORT_EXPORT.'"', false );        
        JToolBarHelper::spacer();
        JToolBarHelper::save("save", _JSHOP_IMPORT);    
        
        include(dirname(__FILE__)."/form.php");  
    }
 
    function save(){
        $mainframe = JFactory::getApplication();
        $jshopConfig = JSFactory::getConfig();
        require_once(JPATH_COMPONENT_SITE.'/lib/uploadfile.class.php');
        require_once(JPATH_COMPONENT_SITE."/lib/csv.io.class.php");
        $ie_id = JRequest::getInt("ie_id");
        if (!$ie_id) $ie_id = $this->get('ie_id');
        
        $lang = JSFactory::getLang();
        $db = JFactory::getDBO();
        
        $_importexport = JTable::getInstance('ImportExport', 'jshop'); 
        $_importexport->load($ie_id);
        $alias = $_importexport->get('alias');
        $_importexport->set('endstart', time());
        $_importexport->store();
                
        //get list tax
        $query = "SELECT tax_id, tax_value FROM `#__jshopping_taxes`";
        $db->setQuery($query);        
        $rows = $db->loadObjectList();
        $listTax = array();
        foreach($rows as $row){
            $listTax[intval($row->tax_value)] = $row->tax_id;
        }
        
        //get list category
        $query = "SELECT category_id as id, `".$lang->get("name")."` as name FROM `#__jshopping_categories`";
        $db->setQuery($query);
        $rows = $db->loadObjectList();
        $listCat = array();
        foreach($rows as $row){
            $listCat[$row->name] = $row->id;
        }
        
        $_products = JModel::getInstance('products', 'JshoppingModel');                
        
        $dir = $jshopConfig->importexport_path.$alias."/";
        
        $upload = new UploadFile($_FILES['file']);
        $upload->setAllowFile(array('csv'));
        $upload->setDir($dir);
        if ($upload->upload()){
            $filename = $dir."/".$upload->getName();
            @chmod($filename, 0777);
            $csv = new csv();
            $data = $csv->read($filename);
            if (is_array($data)){                
                foreach($data as $k=>$row){                    
                    if (count($row)<2 || $k==0) continue;
                                        
                    $tax_value = intval($row[5]);                    
                    if (!isset($listTax[$tax_value])){
                        $tax = JTable::getInstance('tax', 'jshop');
                        $tax->set('tax_name', $tax_value);
                        $tax->set('tax_value', $tax_value);
                        $tax->store();
                        $listTax[$tax_value] = $tax->get("tax_id");                        
                    }
                    
                    
                                             
                    
                    $iii == intval($row[1]);
        $eee == intval($row[5]);
                    
                    $product = JTable::getInstance('product', 'jshop');
                    $product->set("product_ean", $row[1]);
                    $product->set("product_quantity", $row[4]);
                    $product->set("product_price", $row[3]);                                       
                    $product->set("currency_id", $jshopConfig->mainCurrency);
                    $product->set($lang->get("name"), $row[2]);
                    $product->set($lang->get("description"), $row[4]);
                    $product->set("product_name_image", $row[1].".jpg");
                    $product->set("product_full_image", $row[1].".jpg");
                    $product->set("product_thumb_image", $row[1].".jpg");
                    
                    $product_id = $product->get("product_id");
                    
                    $query ="INSERT INTO `#__jshopping_products_to_categories` (`product_id`, `category_id`, `product_ordering`) VALUES ({$iii}, {$eee}, 1)";
                    $db->setQuery($query);
                    $product->store();
                    unset($product);
                    
                    //$query = "INSERT INTO #__k2_tags_xref (`id`, `tagID`, `itemID`) VALUES (NULL, {intval($tagID)}, {intval($row->id)})";
                    //$db->setQuery($query);
                        
                }
            }
            @unlink($filename);
        }else{            
            JError::raiseWarning("", _JSHOP_ERROR_UPLOADING);
        }
                
        if (!JRequest::getInt("noredirect")){
            $mainframe->redirect("index.php?option=com_jshopping&controller=importexport&task=view&ie_id=".$ie_id, _JSHOP_COMPLETED);
        }
    }
    
}
?>
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.10.2012, 16:07
Ответы с готовыми решениями:

Не выполняется запрос к базе данных
В функции korzina генериться запрос вида select * from tovar where id=1 or id=3...

Как Быстро Выполняется Запрос В Большой Базе
Представим себе базку с документооборотом 50-100 документов в день. Пусть учет...

Запрос (INSERT) успешно выполняется 88 раз, но по факту в базе находится только 5 строк. КАК?
Код: $cday = (int)date('j'); $stmt2 = $db-&gt;prepare(&quot;INSERT INTO...

не выполняется запрос в коде, но выполняется в phpliteadmin
всем привет! необходима небольшая помощь, есть бд с таблицей &quot;keys&quot; и одной из...

Запрос к MySQL. Через WorkBench запрос выполняется, а через клиента - нет
Добрый день! Помогите с запросом! string CommandText = &quot;SELECT * FROM...

2
irakli_madrid
9 / 9 / 1
Регистрация: 23.10.2012
Сообщений: 32
23.10.2012, 18:04 2
Поменяйте:

VALUES ({$iii}, {$eee}, 1)
на
VALUES ('$iii', '$eee', 1)

И вообше в MySQL всегда используйте одинарные кавичкы для переменных.
0
resource2008
109 / 110 / 18
Регистрация: 11.03.2011
Сообщений: 421
23.10.2012, 23:01 3
может я чего-то не понимаю под конец дня... не вижу чтобы запрос выполнялся.
сам запрос написали, базе его показали и все...
может не хватает
PHP
1
$db->query();
?
типа так
PHP
1
2
3
4
$query ="INSERT INTO `#__jshopping_products_to_categories` (`product_id`, `category_id`, `product_ordering`) VALUES ({$iii}, {$eee}, 1)";
$db->setQuery($query);
$db->query();
$product->store();
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.10.2012, 23:01

Не выполняется запрос
В общем, есть такой запрос: UPDATE `Configs` SET `Value`= '1' WHERE `ID` =...

Не выполняется запрос к БД
Мой код выводит на экран следующее:Магазин &quot;Буквофил&quot;- Результаты поиска ...

Не выполняется запрос
Прошу помощи. Не работает. А ведь должно.. SQLQuery1.SQL.Text:='select * from...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru