Türkçe karakter sorunu gidermek için aşağıdaki eski kodun yerine yeni kodu kullanın.
Eski Kod: return a > b ? direction : -1 * direction;
Yeni Kod: return direction ? a.localeCompare(b): -1 * direction;
Sonunda aradığımı buldum Codepen'de paylaşılmış isterseniz inceleyebilirsiniz
JavaScript Multi-Sort Array of Objects
Sen selectbox yerine arama yapılabilen selectbox istiyorsun anladığım kadarı ile.
Bunun için https://select2.org/selections kullanabilirsin.
Ben de kişisel searchbox yapmaya çalışıyordum.
Tayfun kardeşim sağ olsun html-css kısmını onun videosundan bakarak yaptım.
İşlerim nedeni ile yarım bırakmıştım. Renkleri falan değişmesi gerekebilir.
En azından işlevsel olarak fena değil. Aranabilir bulunan değerler arasında hareket edilebilir ve enter ile de seçilen değer kullanılabilir.
Kontrollerimi yaparken farkettim click
eventi eklememişim.
ST VE STL değerleri boş bakış açını değiştirmen lazımdı aslında.
Her 1 dakika sonrasında istek atıp kontrol ediliyor.
Dikkat ettin mi bilmiyorum otomatik atılan istekler boş dönüyor.
Fakat zaman artıyor yani incelemem sonucu bilgisayar saati ile başlama saati arasındaki fark alınarak hesaplanıyor.
[
{
"matchDate": "2022-03-23T16:30:00Z",
"DT": "19:30",
"MD": "2022-03-23T19:30:00+03:00",
"HT": "Finlandiya",
"HTTR": "Finlandiya U19",
"AT": "Belçika",
"ATTR": "Belçika U19",
"L": "U19 Avrupa Şampiyonası Elit Tu"
}
]
Yerel saate göre 19:30'da başlamış maç şu anda 21:01 hesaplarsak 76. dakika oynanıyor.
let data = [
{
"date": "2021-03-23",
"price": 300
},
{
"date": "2021-03-24",
"price": 500
},
{
"date": "2021-03-22",
"price": 10
},
{
"date": "2021-03-21",
"price": 500
},
{
"date": "2021-03-13",
"price": 1500
},
{
"date": "2021-03-03",
"price": 250
},
{
"date": "2021-03-15",
"price": 1000
}
]
let sorting = data.sort((a,b)=> a["date"] > b["date"] ? 1: -1)
// sıralamanın tersi için '>' yerine '<' veya '1' ile '-1' yer değiştirmen yeterli.
console.log(sorting)
Sıralama sonrası çıktı.
[
{ date: '2021-03-03', price: 250 },
{ date: '2021-03-13', price: 1500 },
{ date: '2021-03-15', price: 1000 },
{ date: '2021-03-21', price: 500 },
{ date: '2021-03-22', price: 10 },
{ date: '2021-03-23', price: 300 },
{ date: '2021-03-24', price: 500 }
]
let testNames = [ {testName: 'test'}, {testName: 'test2'} ];
function createElement(testNames) {
const container = document.getElementById('container');
testNames.forEach(function(x){
let li;
li = document.createElement('li')
li.classList.add('li-item')
li.innerHTML += `<p>${x.testName}</p>`;
container.innerHTML(li)
})
}
testNames[0].testName = 'name changed';
createElement(testNames)
Ekrana yazdırmış olduğun değerleri tekrar güncellemen gerekiyor. Şimdi işlemi nasıl yaptırıyorsun bilmiyorum sadece dizi içindeki nesneyi değiştiriyorsan çalışmaz zaten.
Eğer tekrar foreach kullanıyorsan appendChild
kullandığın için üstüne ekleme yapar o yüzden innerHtml
kullanarak eski değerleri silmesini ve yeni değerleri yazmasını sağlarsın.
Uzman bir arkadaş farklı bir bakış açısı ile benden daha faydalı olabilir. Test edemediğim zaman kod hatası yapabailiyorum.
$table = [];
$bakiye = 0;
$id = 0;
while ($a = $harcamalar->fetch_array()) {
$id += 1;
$a["ID"] += $id;
$a["total"] = $a["quan"] * $a["price"];
$bakiye += $["total"];
$["bakiye"] = $bakiye; // ile
$table[] = $a;
}
function harcamalar($table, $n) {
if($n == "list") {
foreach ($table as $val) {
echo '<tr>
<th scope="row">'.$val["ID"].'</th>
<td>'.$val["name"].'</td>
<td>'.$val["quan"].'</td>
<td>'.$val["price"].'</td>
<td>'.$val["total"].'</td>
<td>'.$val["bakiye"].'</td> // Ben şimdilik buraya ekledim değerlendirmene göre tekrar düzenlerim.
</tr>';
}
} else {
// burasını tam anlayamadım bakiye bilgisini almaya çalışıyorsun sanki ama neden tablonun dışında?
}
}
harcamalar($table, "list")
Merhaba ben de bu konuda takılmıştım sanırsam güncelleme ile beraber şifrelemelerin yapılarında değişiklik olmuş.
Tayfun Hoca'nın videosunda kullandığı şifreleme algoritması AES-128-CBC
kullandığım zaman için Vector(iv)
uyarısı veriyor.
Daha önce veri şifreleme üzerine sorulan bir soruya verdiği cevapta AES-128-ECB
algoritmasını kullanmış.
Test ettim Vector(iv)
uyarıyısı gelmiyor.
Bilgilendirme için teşekkür ederim.