mantiksal acidan hatali. calismamasi normal. goreceli bir adresden form verisi alarak, static bir adres de post isteginde bulunuyorsun. ajax kullan, mumkunse json degerler ile geleb sonuclari yazdir. daha saglikli. veya ajax kullan ve yine html deger dondur.
mobilim geri donup duzenleyemedim. kisaca ajax kullan. kullanmayacaksanda if(post) kullanimini ajax verilerede degil onu dahil ettigin sayfaya yaz
bağlantını aynı tut. normalde tablo kolonlarının adını yazarak çağrıyorsun, bunda da "as" diyerek tabloyu o an için soyut olarak anlamdırıyorsun veya adlandırıyorsun neyse artık.
SELECT
@netkar:=ROUND(((satis - alis) - (satis / 100 * komisyon)), 2) as kar
FROM `bos`
bunu al pdo da sql işlemi yazdığın yer ile değiştir. sonucu ise ["kar"] olarak al, bu kadar. aynısı yani.
SELECT
@pos_komisyon:=ROUND((satis / 100 * komisyon),2),
@kar:=ROUND((satis - alis),2),
@netkar:=ROUND(((satis - alis) - (satis / 100 * komisyon)), 2)
FROM `bos`
sadece son sonucu istiyorsan bunu kullanman daha mantıklı
SELECT
@netkar:=ROUND(((satis - alis) - (satis / 100 * komisyon)), 2) as kar
FROM `bos`
evet ama bu yanlış tıklandığı için kalıyor orada. sadece hover olarak ayarla veya tıklandıktan sonra zaman aşımı ayarla. https://getbootstrap.com/docs/5.0/components/tooltips/ bu gerekli döküman. sayfanın en altında özelleştirmen için örnekte mevcut.
ihtiyacin olan komutlari biliyorsun, analitik dusun. simdiki zamani olusturabiliyorsun, ilerisi icin tarihde olusturabiliyorsun. ee simdiki zamani istedigin zamanla degistirmene engel olan ne?
imleç alandan çıkmadan nesne yok olduğu için. jquery ile click event oluştur settimeout ile tooltip'i 1 saniye sonra gizle.
en uygun diye bir seçenek olduğunu sanmıyorum. hangisi sana hitap ediyorsa. ben jquery'i tercih ederdim. daha performanslı veya teknik açıdan daha iyi diye mi? alakası yok. ben javascript'in highlights'ını sevemedim bir türlü. jquery gözümde daha derli toplu durduğu için seçtim : ) jquery vs vuejs diye aratırsan çokça karşılaştırması çıkacağına eminim. ben jquery'yi tavsiye ederim, kaynak açısından daha çok ilgi gören bir kütüphane ve uygulaması hem basit hem pratik. gerçi vue için daha basit diyorlar ama, jquery de zor değil yani. biraz pratik yaptıktan sonra, jquery büyücüyü gibi hissetmemi sağladı. hatta jquery kullanırsan ve tasarımla çok haşır neşir olacaksan jquery'nin birde ui kiti mevcut jqueryui diye. örneklerine mutlaka bak derim.
edit: https://vuejs.org/examples/ dan örneklere bakayım dedim bi. kıyaslayacak kadar javascriptte profesyonel değilim ama, js dom ile çok karışıyor. jquery de bu kadar dom'un içerisine girmene gerek kalmadan yapıyı değiştirebiliyorsun. yani bir html dön, bir scripte dön ayrı ayrı yaz gibi bir durum yok. hatta hiç html kodu yazmadan gerektikçe jquery ile oluştur. ayrıca yazdığın tüm methodları bildirmen ve aktarman gerekiyor gibi duruyor. tüm örneklerde export ile kullanıldığı için zorunlu olduğunu varsayıyorum. jquery de bu opsiyonel. son olarak php ile kod yazacaksan ve tasarım motoru kullanacaksan, vuejs kafa karışıklığına da sebep olabilir, aşağı yukarı benzer şekilde php komutları da bildirebilirsin dom da bu seferde ilk bakışta anlaması zor olur hangisi php hangisi js.
bana pratik gelmedi, işte basit bir kıyaslama;
// VueJS
<script>
export default {
data() {
return {
message: 'Hello World!'
}
}
}
</script>
<template>
<h1>{{ message }}</h1>
</template>
//jQuery
<script>$('h1').text('merhaba dünya')</script>
<h1></h1>
açıkcası ben birde gidip eleman içinde bildireceksem mesajımı, uğraşmam.
countdown olarak geçiyor. saatler arası hesaplama yapmak mantığı değiştirmiyor, saatte gün gibi tarihin bir parçası. mantığı ise, belirlediğin zamandan şimdiki zamanı düşmek. daha sonrasında setinterval tarzı bir method ile yenilemek. burada hazır bir örneği var https://www.w3schools.com/howto/howto_js_countdown.asp
evet kimse fikir belirtmeyince, geri dönüp düşündükten sonra gerekli düzenlemeyi yaptım. aslında aklıma geldikten sonra gayet basitmiş de... gelmedi : ) tüm yapıyı false edip, parçalara ayırdığım dizin derinliğine göre toggle'ı true yaptım. burda da yaşadığım sorunlardan biri, alt derinliklerin gözükmemesiydi. regex ile başlayan şeklinde bir ifade de bulundum, başlayan olduğu için ve parçalanan değerlerden tek tek derinliğe indiği için bu sefer yan derinlikleri de göstermeye başladı. örneğin bin/klasor şeklinde gitmesi gerekirken, bin/klasor2'i de bin'in aldığında olduğu için. bu sefer başlayan ifadesini çıkartıp sorgu bittikten sonra, son değeri alıp son değerden sonra başlayan diyerek sorunu çözdüm. indexofu kaldırıp koşulları da azaltınca, çok daha verimli oldu.
kullanmak isteyen benzer bir işe uyarlamak isteyen olursa diye kodları da ekliyorum:
$('[name="dizinara2"]').change(function(){
let dirs = this.value.split('/'),
x = [],
dir = $(`[data-dizin="${this.value}"`),
dirLast = this.value,
liToggle = function(bool, mes){
$('[data-dizin]').each(function(){
$(this).toggle(bool);
});
console.log(mes);
};
for (let y = 0; y < dirs.length; ){
x[y] = y == 0 ? dirs[0] : x[y-1]+'/'+dirs[y];
y++;
}
if(dir.html() !== undefined){
liToggle(false, dirLast)
for (let y = 0; y < dirs.length; ){
x[y] = y == 0 ? dirs[0] : x[y-1]+'/'+dirs[y];
$(`[data-dizin="${x[y]}"`).toggle(true);
y++;
}
$(`[data-dizin^="${dirLast}"`).each(function(){
$(this).toggle(true);
});
}else{
dirLast.length > 0 ?
liToggle(false, dirLast+' için sonuç bulunamadı') :
liToggle(true);
}
});
.warapper display table
.ide float left
.texarea foat right