sayfaya sonradan eklenen içeriğe event eklemek için vanilla jsde bir tık uğraşmak gerekebiliyor, şu fonksiyon ile yapabilirsin
function live (eventType, elementQuerySelector, cb) {
document.addEventListener(eventType, function (event) {
var qs = document.querySelectorAll(elementQuerySelector);
if (qs) {
var el = event.target, index = -1;
while (el && ((index = Array.prototype.indexOf.call(qs, el)) === -1)) {
el = el.parentElement;
}
if (index > -1) {
cb.call(el, event);
}
}
});
}
live("click", "div.sonradan-eklenen", function (e) {
// ne istiyorsan
});
group by ile verileri gruplayıp count ile saydırarak bakabilirsin. Örneğin
SELECT *, count(telefon) as total FROM tablo_adi GROUP BY telefon
Böylece eğer telefon değeri 1'den büyükse aynı tablo içinde daha fazladır, kaç tane olduğunu yine telefon değerinin çıktısından görebilirsin.
Bu tabi bir yaklaşım yöntemi, ne için kullanacağında önemli farklı çözümler olabilir.
çünkü oluşturduğun $cypher değişen adıyla kullandığın $chyper değişken adı aynı değil, makalede ilk örnekte ben de hatalı yazmışım kusura bakma düzenledim şimdi makaleyide :)
ne için xml kullanılmalı mı? sitemap için xml çıktısı vermek durumundasın örneğin, ya da rss için, api için ister xml ver ister json ancak artık modern yöntemde api için xml çokta kullanılan bir şey değil, kısaca soru çok havada.
@yazilimyolcusu, position: absolute verdiğinde bir elemana onun varlığını sayfadan kaldırmış oluyorsun, artık boşluk doldurmuyor havada asılı kalıyor gibi düşün, dolayısı ile sayfa düzeninin bozulmasına sebep olabiliyor çoğu zaman
react ile api entegresi diye bir konu mu var anlamadım? api hazırlamak ile ona istek atmak arasında fark var, API hazırlamak uğraştırıcı, kullanmak genelde kolaydır eğer bunu soruyorsan.
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.
gravatar.com adresinden buraya kayıt olduğun e-posta adresi ile kayıt olup avatarını yüklersen bir süre sonra siteyede yansıyacaktır.
hem gravatar hizmeti sunan tüm sitelerde otomatik olarak avatarın gözükür, fena olmaz :) ilerleyen süreçte özel yükleme kısmı hazırlayacağım.
e.preventDefault(); koyarak a etiketinin butona tıklayınca çalışmamasını sağlayabilirsin. Örnek;
<a href="https://prototurk.com" target="_blank">
<span class="title">Başlık</span>
<button class="add-basket" data-id="1">Sepete Ekle</button>
</a>
<script>
document.querySelectorAll('.add-basket').forEach(function(btn){
btn.addEventListener('click', function(e){
e.preventDefault();
console.log(this.dataset.id);
});
});
</script>
normalde react ile bir web sayfası hazırladığında sayfa kaynağında göremiyorsun yazdıklarını sonradan generate ediliyor. server-side rendering ile sayfa kaynağında görüyorsun, bu da genede seo için önemli bir olay.