67 lines
1.8 KiB
PHP
67 lines
1.8 KiB
PHP
<?php
|
|
|
|
// Konfiguracja środowiska PrestaShop
|
|
define('_PS_ADMIN_DIR_', getcwd());
|
|
require_once dirname(__FILE__) . '/config/config.inc.php';
|
|
require_once dirname(__FILE__) . '/init.php';
|
|
|
|
// ID producentów, których produkty mają zostać zaktualizowane
|
|
$manufacturerIds = [186];
|
|
|
|
// ID cechy oraz jej wartości do przypisania
|
|
$featureId = 20;
|
|
$featureValueId = 19010;
|
|
|
|
// Pobierz produkty od wybranych producentów
|
|
$sql = '
|
|
SELECT p.id_product
|
|
FROM ' . _DB_PREFIX_ . 'product p
|
|
WHERE p.id_manufacturer IN (' . implode(',', array_map('intval', $manufacturerIds)) . ')
|
|
';
|
|
|
|
$productIds = Db::getInstance()->executeS($sql);
|
|
|
|
if ($productIds)
|
|
{
|
|
foreach ($productIds as $product)
|
|
{
|
|
$productId = (int)$product['id_product'];
|
|
|
|
// Sprawdź, czy cecha już istnieje dla produktu
|
|
$sqlCheck = '
|
|
SELECT id_feature
|
|
FROM ' . _DB_PREFIX_ . 'feature_product
|
|
WHERE id_product = ' . $productId . ' AND id_feature = ' . (int)$featureId . '
|
|
';
|
|
|
|
$featureExists = Db::getInstance()->getValue($sqlCheck);
|
|
|
|
if (!$featureExists)
|
|
{
|
|
// Przypisz cechę do produktu
|
|
$insert = '
|
|
INSERT INTO ' . _DB_PREFIX_ . 'feature_product (id_feature, id_product, id_feature_value)
|
|
VALUES (' . (int)$featureId . ', ' . $productId . ', ' . (int)$featureValueId . ')
|
|
';
|
|
Db::getInstance()->execute($insert);
|
|
|
|
echo 'Product ID: ' . $productId . " - Feature ID: $featureId - Feature Value ID: $featureValueId\n";
|
|
echo '<br>';
|
|
echo "Dodano cechę dla produktu ID: $productId\n";
|
|
echo '<br>';
|
|
}
|
|
else
|
|
{
|
|
echo "Produkt ID: $productId już posiada tę cechę\n";
|
|
echo '<br>';
|
|
}
|
|
}
|
|
}
|
|
else
|
|
{
|
|
echo "Nie znaleziono produktów dla podanych producentów.\n";
|
|
echo '<br>';
|
|
}
|
|
|
|
echo "Operacja zakończona.\n";
|