You are currently viewing Opencart Toplu Ürün Seçenek Ekleme
Opencart Toplu Ürün Seçenek Ekleme

Opencart Toplu Ürün Seçenek Ekleme

Merhabalar sizlere bugün Opencart Toplu Ürün Seçenek Ekleme php ve mysql ile nasıl yapılır aktarmaya çalışacağım.

Neden Gerekli

Örnek ile anlatayım, 
Toplu bir şekilde ürünleri sisteminize çektiniz. Bu ürünlerinizin hepsinin ayakkabı olduğunu ve standart hepsine belirli bir numara grubunu uygulamak istediniz. Bu işlemi yapmak için birden fazla yol var; ya tek tek girerek hepsine özel olarak numara belirlersiniz, ya aşağıdaki bir kod bloğu yazıp kullanırsınız yada kendinizce farklı bir yöntem üretebilirsiniz.

Adımlar Neler

ilk olarak opencart katalog > seçenekler kısmına gelin.

opencart katalog seçenekler

yeni ekle yollarını izleyerek ilgili seçeneklerinizi oluşturun.

Oluşturmanızın ardından phpmyadmin’e bağlanarak
option_value_description tablosundan ilgili eklemelerini bulup kayıt edin.

örnek olarak yukarıdaki alanları aldım.

Benim 9 adet alanım vardı ve bunların  option_value_id kayıt ettikten sonra sorgumdaki  option_value_id karşılık gelen yere yazdım bu işlemi array list oluşturup foreach içine alıp kısaltabilirsiniz. Ben o anda hızlıca yazmak için bu şekilde bıraktım 🙂 13 numaralı alan ise selectbox “açılan kutu” id değeridir.

Gelelim kod bloğumuza alt kısımdaki kodu hostinginize ftp ile bağlanarak yeni bir dosya oluşturup alt kısımdaki kodları yazabilirsiniz.

Mysql bağlantı bilgilerini yazabilir yada config.php dosyasınıcı include ‘config.php’ yazıp içeri aktarabilirsiniz.


ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);
// DB
define('DB_DRIVER', 'mysqli');
define('DB_HOSTNAME', 'localhost');
define('DB_USERNAME', 'username');
define('DB_PASSWORD', 'password');
define('DB_DATABASE', 'database');
define('DB_PORT', '3306');
define('DB_PREFIX', 'oc_');

$mysqli = new mysqli(DB_HOSTNAME,DB_USERNAME,DB_PASSWORD,DB_DATABASE);
if ($mysqli->connect_errno) {
echo "Failed to connect to MySQL: (". $mysqli->connect_errno .")" . $mysqli->connect_error;
}
$query = "SELECT * FROM oc_product_description";

if ($result = $mysqli->query($query)) {
/* fetch associative array */
while ($row = $result->fetch_assoc()) {
$prodSql = "INSERT INTO oc_product_option (product_id,option_id,value,required) VALUE (".$row['product_id'].",13,'',1)";
if($mysqli->query($prodSql))
{
$pSql = "INSERT INTO `oc_product_option_value` (`product_option_id`, `product_id`, `option_id`, `option_value_id`, `quantity`, `subtract`, `price`, `price_prefix`, `points`, `points_prefix`, `weight`, `weight_prefix`) VALUES
(".$mysqli->insert_id.", '".$row['product_id']."', 13, 69, 0, 0, '0.0000', '+', 0, '+', '0.00000000', '+'),
(".$mysqli->insert_id.", '".$row['product_id']."', 13, 62, 0, 0, '0.0000', '+', 0, '+', '0.00000000', '+'),
(".$mysqli->insert_id.", '".$row['product_id']."', 13, 63, 0, 0, '0.0000', '+', 0, '+', '0.00000000', '+'),
(".$mysqli->insert_id.", '".$row['product_id']."', 13, 64, 0, 0, '0.0000', '+', 0, '+', '0.00000000', '+'),
(".$mysqli->insert_id.", '".$row['product_id']."', 13, 65, 0, 0, '0.0000', '+', 0, '+', '0.00000000', '+'),
(".$mysqli->insert_id.", '".$row['product_id']."', 13, 66, 0, 0, '0.0000', '+', 0, '+', '0.00000000', '+'),
(".$mysqli->insert_id.", '".$row['product_id']."', 13, 67, 0, 0, '0.0000', '+', 0, '+', '0.00000000', '+'),
(".$mysqli->insert_id.", '".$row['product_id']."', 13, 68, 0, 0, '0.0000', '+', 0, '+', '0.00000000', '+');";
if(!$mysqli->query($pSql))
{
echo "Basmadı : ".$pSql." : 
";exit;
}
}
else
{
echo "basmadı : ".$prodSql." : ".$row['product_id']."";
}
//$mysqli->insert_id
//echo "<pre>";
//print_r ($row);
//echo "</pre>";
}

/* free result set */
$result->free();
}

Mysql bilgilerini hatırlamamanız halinde bu bilgileriniz bağlandığınız ftp dizininde config.php dosyasında yazmaktadır.

Yukarıdaki adımları izledikten sonra Opencart Toplu Ürün Seçenek Ekleme için oluşturduğunuz sayfaya sitenizin adres satırından yazarak çalıştırmanız yeterli olacaktır.

👋

kurtitasarim

‘’İrade ve yargıları aşan güçlü bir coşku, ihtiras" diye tanımlanır tutku. Yaptığın işi sevmek yerine, sevdiğin işi yap mottosu da benim tutku tanımım. Kod yazmak bir yana, o kodun sistem üzerindeki hareketlerini, farklı cihazlar ile etkileşimini, o noktalarda oluşan sıkıntıları görmek, çözmek ve bunu yaparken diğer kişilere yol göstermek işimin en zevkli yanı. Bu sebeple önce tutku ile yapılan iş, sonra maddiyat..

This Post Has One Comment

  1. sercan

    Güzel Anlatım ve gerekli bir ihtiyaç 3x içinde paylaşır mısınız teşekkür ederim

Bir yanıt yazın