PHP Array Aynı Veri Olunca Üzerine Yazması
Merhaba,
Bir ürün var o ürün ölçüleri var ölçüleri farklı olunca başka bir eleman oluşturmasını istiyorum.
Ürün ölçüleri aynı olunca adet yükseltiyor
Fakat Farklı Ölçüde olunca başka bir eleman yazdıramadım üzerine yazdırıyor.
Aynı ürün id sahip olduğunda üzerine yazdırıyor.
https://i.hizliresim.com/1dj604t.PNG
ob_start();
session_start();
include("config/baglan.php");
if (isset($_GET['urun_id']) && isset($_GET['olcum']) && isset($_GET['adet'])) {
$urun_id = intval($_GET['urun_id']);
$olcum = $_GET['olcum'];
$adet = $_GET['adet'];
$urun = $baglanti->prepare("SELECT * FROM urunler WHERE urun_id = ?");
$urun->execute(array($urun_id));
$urunver = $urun->fetch(PDO::FETCH_ASSOC);
if($urun->rowCount() != "0"){
$baslik = $urunver["urun_baslik"];
$resim = $urunver["urun_kapak"];
if ($_SESSION["urunler"][$urun_id]["olcum"] == $olcum) {
$urun_adet = $_SESSION["urunler"][$urun_id]["urun_adet"];
$adet += $urun_adet;
}
$_SESSION["urunler"][$urun_id]["urun_baslik"]=$baslik;
$_SESSION["urunler"][$urun_id]["urun_kapak"]=$resim;
$_SESSION["urunler"][$urun_id]["olcum"]=$olcum;
$_SESSION["urunler"][$urun_id]["urun_adet"]=$adet;
}
}
print_r($_SESSION["urunler"]);
o zaman yapacağın şey ürün id'si altında yeni dizi tanımlayarak oluşturmak olabilir.
$_SESSION["urunler"][$urun_id][] = [
'urun_baslik' => $baslik,
'urun_kapak' => $resim,
'olcum' => $olcum,
'urun_adet' => $adet
];
böylece aynı ürün id'li birden fazla farklı veri ekleyebilirsin. Tabi bu sefer kontrollerini isset($_SESSION['urunler'][$urun_id])
şeklinde değilde bu dizinin içinde eşleşene göre kontrol etmen gerekir.