PHP Ürün Grup & Listeleme
PHP ile Stok takip yazılımı yazmaya çalışıyorum. Ürün ekleme, bilgi girme gibi tüm ayarlar tamam fakat şöyle bir konuda takıldım;
Bir depoda bulunan malzemelerin seri numaraları ile birlikte kaç adet olduğunu bilmem gerekiyor.
Örn: elimde 3 Adet HP XYZ model dizüstü bilgisayar var. Ben bunların kayıtlarını girdiğimde belli bir özelliğe göre (Mesela isim "HP XYZ") olan ürünü her giriş yaptığımda stok adetini 1 arttırması, çıkış yaptığımda ise 1 adet stoktan düşmesi gerekiyor.
Ve bunları listelerken tek çatı altında listelemesini istiyorum.
Örn:
- HP XYZ / 3Adet
- HP XYZ / SeriNo: 111
- HP XYZ / SeriNo: 222
- HP XYZ / SeriNo: 333
- Asus ZZZ / 1 Adet
- Asus ZZZ / SeriNo: 123
Gibi..
Yada kısaca anlatmak gerekirse ; https://codecanyon.net/item/simple-stock-manager/2736749 burada satılan script gibi..
Bu konuda yardımlarınıza ihtiyacım var. Lütfen bilen/anlayan birisi yardımcı olabilir mi?
kardeşim arattığın kelimeye göre stok adedi ekleyebilirsin şöle bir yapı hazırladım
umarım doğru yapmışımdır baya bi uğraştım normalde
kod yazmayı pek sevmem ama uğraşıyım dedim yaptım :D
<form action="" method="GET">
<input type="text" name="ara"> <br>
<button type="submit" name="ekle">Ekle</button>
</form>
<?php
if($_GET && $_GET['ara'] != ''){
$ara = $_GET['ara'];
$query = $db->prepare('select * from dersler where baslık like ?');
$query->execute(["%". $ara . "%"]);
$rows = $query->fetchAll(PDO::FETCH_ASSOC);
$say = $query->RowCount();
$hata = $query->errorInfo();
foreach($rows as $row){
$stok = $row['stok_adedi'];
$query = $db->prepare('update dersler set stok_adedi = ? where baslık = ?');
$query->execute([$stok+1, $row['baslık']]);
$hata = $query->errorInfo();
echo $hata[2];
echo $row['baslık'] . '<br>';
}
}
?>
// burda tablo yapısı mevcut veritabanı oluşturup yapıya eklersen görürsün
CREATE TABLE `dersler` (
`id` int(11) NOT NULL,
`baslık` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
`içerik` text COLLATE utf8_unicode_ci NOT NULL,
`stok_adedi` int(11) NOT NULL,
`tarih` timestamp NOT NULL DEFAULT current_timestamp()
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;