PHP Ürün Varyant Sistemi
Herkese iyi çalışmalar
PHP ile ürün varyant sistemi yapmaya çalışıyorum fakat kendi yöntemlerim pek istediğim gibi olmadı
Acaba varyant mantığı konusunda fikir verebilir misiniz?
Örnek bir ürünümüz kılıf olsun
Marka: Samsung (Markayı marka tablomdan id ile eşleştirebilirim)
Model: S10 Plus
Renk: Kırmızı
Stok: 10
Fiyat: 20TL
ama aynı zamanda çoğu ürününde varyantı yok yani nasıl pratik bu işlemleri halledebilirim
Örnek şöyle birşey yaptım:
https://i.hizliresim.com/msp30qc.jpg
yaptığım sistemde inputun içine modelleri yazdım ve virgül ile ayırıp dizi ile ayrıştırdım
<?php
if($_POST){
$islem = $db->prepare("INSERT INTO urun SET
baslik = ?,
title = ?");
$islem = $islem->execute(array(
$_POST['baslik'],
$_POST['title']));
$id = $db->lastInsertId();
$i = 0;
if(isset($_POST['varyant_adi'])){
foreach ($_POST['varyant_adi'] as $s) {
$islem = $db->prepare("INSERT INTO varyantlar SET urun_id = ?, baslik = ?");
$islem = $islem->execute(array($id,$s));
$varyant_id = $db->lastInsertId();
$ii = 0;
if(isset($_POST['urunvaryanlari'.$i])){
foreach ($_POST['urunvaryanlari'.$i] as $as) {
$islem = $db->prepare("INSERT INTO urun_varyant SET urun_varyant_id = ?, baslik = ?, marka = ?, renk = ?, fiyat = ?");
$islem = $islem->execute(array($varyant_id,$as,$_POST['marka'.$i][$ii],$_POST['renk'.$i][$ii],$_POST['fiyat'.$i][$ii]));
$ii++;
}
}
$i++;
}
}
if($islem){
echo b();
}else{
echo h();
}
}
Çekmek için
<?php
$query = $db->query("SELECT * FROM varyantlar WHERE urun_id = '{$urun['id']}' ORDER BY id ASC", PDO::FETCH_ASSOC);
if($query->rowCount()){
foreach( $query as $row ){
$query1 = $db->query("SELECT * FROM urun_varyant WHERE urun_varyant_id = '{$row['id']}' ORDER BY id ASC", PDO::FETCH_ASSOC);
if($query1->rowCount()){
foreach( $query1 as $row1 ){ ?>
<input type="text" name="s" value="<?php echo $row1['tablo_Adi'] ?>">
<input type="text" name="s" value="<?php echo $row1['tablo_Adi'] ?>">
<input type="text" name="s" value="<?php echo $row1['tablo_Adi'] ?>">
<input type="text" name="s" value="<?php echo $row1['tablo_Adi'] ?>">
<?php } } } }?>