eger unique bir degerin varsa id haricinde, elbette id kullanmak zorunda degilsin. ornegin blog mantigini ele alalim.
eger senin basliklarinin tamami birbirinden farkli olacagina eminsen, unique olacaksa o zaman id yerine url kontrolu yapabilirsin, sana kalmis bu durum.
soyle bir kontrol ile belki daha kolay yonetebilirsin;
<?php
$ad = $_POST['ad'];
$ozellik = $_POST['ozellik'];
$kategori = $_POST['kategori'];
$eskifiyat = $_POST['eskifiyat'];
$yenifiyat = $_POST['yenifiyat'];
$indirimlifiyat = $_POST['indirimlifiyat'];
$urunsayisi = $_POST['urunsayisi'];
$urunalani = $_POST['urunalani'];
$icerikid = $_POST['icerikid'];
// dosya varsa hatalar bu degiskende tutulacak
$errors = [];
foreach ($ad as $index => $names) {
$s_ad = $names;
$s_ozellik = $ozellik[$index];
$s_kategori = $kategori[$index];
$s_eskifiyat = $eskifiyat[$index];
$s_yenifiyat = $yenifiyat[$index];
$s_indirimlifiyat = $indirimlifiyat[$index];
$s_urunsayisi = $urunsayisi[$index];
$s_urunalani = $urunalani[$index];
$s_icerikid = $icerikid[$index];
$dosya = 'json/' . $s_icerikid . '.json';
if (file_exists($dosya)) {
$errors[] = "$dosya diye bir dosya var";
} else {
// dosya yoksa islemlere devam et
global $filename;
$filename = $s_icerikid . ".json";
$myObj->ss_dosya_adi[] = $dosya_adi;
$myObj->ss_ad = $s_ad;
$myObj->ss_ozellik = $s_ozellik;
$myObj->ss_kategori = $s_kategori;
$myObj->ss_eskifiyat = $s_eskifiyat;
$myObj->ss_yenifiyat = $s_yenifiyat;
$myObj->ss_indirimlifiyat = $s_indirimlifiyat;
$myObj->ss_urunsayisi = $s_urunsayisi;
$myObj->ss_urunalani = $s_urunalani;
$myObj->ss_icerikid = $s_icerikid;
$dizijson = json_encode($myObj);
file_put_contents("json/" . $filename, $dizijson);
if (move_uploaded_file($gecici_yol, "../../images/indexurunler/" . $dosya_adi)) {
}
}
}
if (count($errors) > 0) {
print_r($errors); // hatali olan dosyalari gosterir, hatali olmayanlar eklendi hatali olanlar icinde uyari vs, verebilirsin
}
bu sekilde degil, tum yapiyi kucuk componentlere bolmelisin ve her component ayri bir js dosyasi olmali, o zaman yonetmeti daha kullanisli olacak, yeniden kullanilabilirligi olacak
ne yazık ki öyle bir durum söz konusu değil, iframe sadece aynı originde ise müdahale eedebiliyorsun embed ettiğin yerin başka bir yer olduğunu düşünürsek müdahale etmen söz konusu değil.
sanirim reduce
kullanacaktın ama map
kullanmışsın :) aynı işlemi reduce
ile deneyebilirsin. Ve her ihtimale karşı filter'da bir şey dönüyor mu diye kontrol edebilirsin, çarpımı öncelik sırasında belirtebilirsin.
setTotal(
basket.reduce((acc, item) => {
return (
acc +
(item.amount * (products.filter((product) => product.id === item.id)?.price || 0))
);
}, 0)
);
yok birbirini etkilemez, bunu denemek icin birini normal digerini gizli sekmeden girip deneyebilirsin, session'lar farkli olacagi icin birbiriyle alakasi olmayacak, en kotu 2 farkli tarayicidan girip deneyebilirsin :)
çünkü domain düşmüştü, dün yeniledim, unutkanlık :D
tam olarak anlayamadim ne yaptigini, ama 2 sort deneyebilirsin
console.log(
people.sort((a, b) => a.data.entertime.localeCompare(b.data.entertime))
.sort((a, b) => a.data.groupname.localeCompare(b.data.groupname))
)
eger iki farklı yerde kullanıcılar aynı tabloada ise sen sadece girişleri ayırdıysan, o zaman kullanıcı adı ve parola ile normal bir üyede admin tarafından yönetici olarak girebilir.
ama eğer role gibi bir şeyin varsa ve admin girişinde role'e bakıyorsan sorun yok, ya da kullanıcılar ve yöneticiler iki farklı tabloysa yine sorun olmaz.
burada senin dikkat etmen gereken, xss açıkları olabilir, kullanıcıdan alacağın her datayı güvenlik gereği htmlspecialchars
gibi metodlardan geçirebilirsin.
aslinda bu bi hata degil, gelistirici icin bir uyari.
sendekinin sebebi ise, Icon
componentini serialize edemem ben diyor, referanslı bir şeyleri state'de tutmaya çalışırsan alacağın hata bu, ama bu bir hata değil yani her şey olması gerektiği gibi çalışmaya devam eder, bazen böyle durumlar olabilir state'de metod vs. tutmak gerekebilir, öyle durumlarda bunu görmezden gel.