MySQL veritabanı kullanarak verileri saniyelerle sınırlamak için, sorgunuzda "WHERE" komutunu kullanabilirsiniz.
Örneğin, son bir saat içinde oluşan verileri çekmek isterseniz, aşağıdaki gibi bir sorgu kullanabilirsiniz:
SELECT * FROM tablo_adi WHERE zaman_sutunu >= DATE_SUB(NOW(), INTERVAL 1 HOUR);
Bu sorgu "tablo_adi" tablosunda "zaman_sutunu" sütununda kayıtlı olan verileri verir ve bu verilerin oluşma zamanı,
şu andan 1 saat öncesine eşit veya daha yeni olmalıdır.
DATE_SUB() fonksiyonu MySQL'de zaman dilimleri için kullanılan bir fonksiyondur.
Bu fonksiyon verilen bir zaman dilimi, verilen bir zamandan önceki bir zaman dilimini elde etmek için kullanılabilir.
"NOW()" fonksiyonu ise şu anki tarih ve saati döndürür.
Aynı şekilde, saniye cinsinden de sorgu yapabilirsiniz. Örnek:
SELECT * FROM tablo_adi WHERE zaman_sutunu >= DATE_SUB(NOW(), INTERVAL 30 SECOND);
Bu sorgu son 30 saniye içinde oluşan verileri verir.
JavaScript'te birden fazla diziyi karıştırmak için concat() metodunu veya spread operator kullanabilirsiniz.
concat() metodu iki veya daha fazla diziyi birleştirir ve yeni bir dizi oluşturur.
spread operator (...) dizileri ayrıştırmak için kullanılır ve dizileri birleştirirken daha esnek bir yol sağlar.
Örneğin, aşağıdaki örnekte iki dizi ("dizi1" ve "dizi2") kullanılır ve concat() metodu ile birleştirilir.
const dizi1 = [1, 2, 3];
const dizi2 = [4, 5, 6];
const karisikDizi = dizi1.concat(dizi2);
console.log(karisikDizi); // [1, 2, 3, 4, 5, 6]
Aynı işlemi spread operator ile yapmak için :
const dizi1 = [1, 2, 3];
const dizi2 = [4, 5, 6];
const karisikDizi = [...dizi1, ...dizi2];
console.log(karisikDizi); // [1, 2, 3, 4, 5, 6]
Birden fazla diziyi karıştırmak isterseniz, dizileri rastgele sıralamak için sort() metodunu kullanabilirsiniz.
Ancak dizileri sıralamak için kullanılır o yüzden karıştırma olarak kullanamayız.
Onun yerine 'Fisher-Yates Shuffle Algorithm' yada benzeri bir algoritma kullanmanız önerilir.
function karisikDizi(arr) {
for (let i = arr.length - 1; i > 0; i--) {
const j = Math.floor(Math.random() * (i + 1));
[arr[i], arr[j]] = [arr[j], arr[i]];
}
return arr;
}
Bu fonksiyon, gönderilen diziyi rastgele sıralar ve yeni bir dizi oluşturmaz.
veritabanınızda bir tablonun verilerini başka bir tablo'ya taşımak istiyorsanız,
aşağıdaki SQL sorgusunu kullanabilirsin
INSERT INTO yeni_tablo (kolon1, kolon2, ...)
SELECT kolon1, kolon2, ...
FROM eski_tablo
WHERE koşul;
Bu sorgu ile, eski_tablo adlı tablonun belirtilen koşulu sağlayan
tüm satırlarını yeni_tablo adlı tablo'ya kopyalayabilirsiniz.
Örneğin, aşağıdaki sorgu ile eski_tablo tablosundaki tüm satırları yeni_tablo tablosuna kopyalayabilirsin
INSERT INTO yeni_tablo (kolon1, kolon2, ...)
SELECT kolon1, kolon2, ...
FROM eski_tablo;
Eğer sadece belirli bir koşul sağlanan satırları taşımak istiyorsanız, WHERE koşulu kullanabilirsiniz.
Örneğin, aşağıdaki sorgu ile eski_tablo tablosundaki id değeri 1 olan satırı
yeni_tablo tablosuna kopyalayabilirsin
INSERT INTO yeni_tablo (kolon1, kolon2, ...)
SELECT kolon1, kolon2, ...
FROM eski_tablo
WHERE id = 1;
Bu sorguyu kullanarak gerçekleştirebilirsin.
Örnek bir kod
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$query = "INSERT INTO yeni_tablo (kolon1, kolon2, ...) SELECT kolon1, kolon2, ... FROM eski_tablo WHERE id = 1";
$stmt = $db->prepare($query);
$stmt->execute();
Bu kod parçacığında,
veritabanına bağlantı kurulur ve
INSERT INTO ... SELECT sorgusu ile eski_tablo tablosundan yeni_tablo tablosuna veri taşınır
Eğer tbody etiketine bir max-height değeri verdiyseniz ve bu değer çalışmıyorsa,
olası nedenlerden biri tbody etiketinin varsayılan olarak display: table-row-group değeri olmasıdır.
Bu, tbody etiketinin bir tablo satır grubu olarak görüntülenmesine neden olur ve bu nedenle max-height özelliği çalışmaz.
Bu sorunu çözmek için, tbody etiketine display: block değeri verin.
Bu, tbody etiketini bir bloğa dönüştürerek, max-height özelliğini kullanmanıza izin verecektir.
Örnek kod :
tbody {
display: block;
max-height: 200px;
min-height: 100px;
overflow-y: scroll;
}
Bu örnekte, tbody etiketi bir bloğa dönüştürülür ve max-height değeri 200px olarak ayarlanır.
overflow-y: scroll değeri, tbody etiketinin içeriğinin kaydırılmasına izin verir.
Bu şekilde, tbody etiketinin içeriği 200px'lik bir alana sığacak şekilde kaydırılabilir hale gelir.
AJAX tarafında hata mesajlarını göstermek için, ilk olarak AJAX isteğinizi gönderirken error callback fonksiyonunu tanımlamanız gerekiyor.
Bu fonksiyon, AJAX isteği başarısız olduğunda çalıştırılacak ve hata mesajlarını göstermek için kullanılacak.
Örnek olarak, aşağıdaki kod bloğu AJAX isteği başarısız olduğunda hata mesajı gösterebilir:
$.ajax({
url: '/update_profile',
type: 'POST',
data: { ... },
success: function(response) {
// İşlem başarılı olduğunda yapılacak işlemler
},
error: function(xhr, status, error) {
// İşlem başarısız olduğunda yapılacak işlemler
alert('Hata: ' + error);
}
});
Bu örnekte, AJAX isteği başarısız olduğunda error callback fonksiyonu çalıştırılır ve hata mesajı alert ile gösterilir.
Bu örnekteki error değişkeni, hata mesajının tam metnini içerir. Hata mesajını göstermek için bu değişkeni kullanabilirsiniz.
Not: Bu örnek jQuery kütüphanesi kullanılarak verilmiştir.
Eğer farklı bir JavaScript kütüphanesi veya vanilla JavaScript kullanıyorsanız, yukarıdaki örnekteki kod bloğunu uyarlamanız gerekebilir.
Merhaba! Kullanıcının ülkesini ve ülke telefon kodunu otomatik olarak belirleyip
bunu drop-down list içerisinde option olarak seçili
konuma getirmek için aşağıdaki adımları izleyebilirsiniz:
Kullanıcının IP adresini kullanarak ülkesini belirleyin. Bu işlemi yapmak için,
bir IP adresi çözümleyici kullanabilirsiniz. Örneğin,
"ipapi" (https://ipapi.co/) gibi bir hizmeti kullanarak IP adresini çözümleyebilirsiniz.
Bu hizmete bir IP adresi gönderir ve ülke kodunu ve ülke ismini geri döndürür.
Ülke kodunu kullanarak ülke telefon kodunu belirleyin.
Örneğin, "TR" ülke kodunu "90" telefon koduna eşleştirebilirsiniz.
Bu eşleştirmeyi bir veritabanında tutabilir veya bir JavaScript dosyasında hard-coded olarak tutabilirsiniz.
Drop-down list oluşturun ve ülke seçeneklerini ekleyin.
Örnek bir HTML kodu
<select id="country-select">
<option value="TR">Türkiye</option>
<option value="US">ABD</option>
<option value="DE">Almanya</option>
<!-- diğer ülke seçeneklerini ekleyin -->
</select>
Bu kod, bir drop-down list oluşturur ve Türkiye, ABD ve Almanya gibi ülke seçeneklerini ekler.
Kullanıcının ülkesini belirlediğiniz hizmetten dönen ülke kodunu kullanarak
drop-down list içerisinde ülke seçeneğini seçili hale getirin. Örnek bir JavaScript kodu
var countryCode = 'TR'; // kullanıcının ülke kodunu buraya yazın
var countrySelect = document.getElementById('country-select');
for (var i = 0; i < countrySelect.options.length; i++) {
if (countrySelect.options[i].value == countryCode) {
countrySelect.options[i].selected = true;
break;
}
}
Bu kod, drop-down list içerisinde ülke kodunu eşleştiren seçeneği bulur ve
onu seçili hale getirir.
İsterseniz, ülke telefon kodunu da otomatik olarak gösterin. Örnek bir JavaScript kodu
var phoneCode = '90'; // kullanıcının ülke telefon kodunu buraya yazın
var phoneCodeElement = document.getElementById('phone-code');
phoneCodeElement.innerHTML = phoneCode;
Bu kod, ülke telefon kodunu "phone-code" ID'sine sahip bir elemente yazar.
Bu adımları izleyerek, kullanıcının ülkesini ve ülke telefon kodunu otomatik olarak belirleyip
bunu drop-down list içerisinde option olarak seçili konuma getirebilirsiniz.
Sunucuya yapılan istekleri engelleyen güvenlik duvarı olabilir
çözümüde sunucunu mysqli gelen istekleri kabul edecek şekilde yapılandır
Buyurun bu kodlar işinizi görür
örnek tablo yapısı
tablo adı
kategoriler
tablo yapısı
id
başlık
durum
değişecek kolonun adı durum
Kullanımı
örnek UPDATE konular SET durum = replace(durum,'eski değer 1','yeni değer 0');
UPDATE kategoriler SET durum = replace(durum,'1','0');
sorunu tam anlamadım ama
sayfanın açık veya kapalı olmasınımı istiyorsun
tam açıklarsan yardımcı olurum
HTML
<div class="row">
<div class="col-lg-4">
<div class="card bg-pattern">
<div class="card-body">
<div class="text-center">
<img src="amazon.png" alt="logo" class="avatar-xl rounded-circle mb-3">
<h4 class="mb-1 font-20">Amazon Inc.</h4>
<p class="text-muted font-14">Seattle, Washington</p>
</div>
<p class="font-14 text-center text-muted">
Amazon.com, Inc., doing business as Amazon, is an American electronic commerce and cloud computing company based in Seattle..
</p>
<div class="text-center">
<a href="nojavascript...void(0);" class="btn btn-sm btn-light">View more info</a>
</div>
<div class="row mt-4 text-center">
<div class="col-6">
<h5 class="fw-normal text-muted">Revenue (USD)</h5>
<h4>17,786 cr</h4>
</div>
<div class="col-6">
<h5 class="fw-normal text-muted">Number of employees</h5>
<h4>566k</h4>
</div>
</div>
</div>
</div>
</div>
</div>
style css
.row {
--bs-gutter-x: 24px;
--bs-gutter-y: 0;
display: flex;
flex-wrap: wrap;
margin-top: calc(var(--bs-gutter-y) * -1);
margin-right: calc(var(--bs-gutter-x) * -.5);
margin-left: calc(var(--bs-gutter-x) * -.5);
}
.card-body {
flex: 1 1 auto;
padding: 1.5rem 1.5rem;
}
.col-lg-4 {
flex: 0 0 auto;
width: 33.33333%;
}
.bg-pattern {
background-size: cover;
}
.text-center {
text-align: center!important;
}
.mt-4 {
margin-top: 2.25rem!important;
}
BS-5 Destekler kendine göre düzenle
ayrıca sağ ve solundaki boşlukları kaldırmak için
örnek class'col-lg-4 p-0' değerini ataya bilirsin yine
col yükseklik genişlik değeri için
Yükseklik h
Genişlik W
örnek
classcol-lg-4 h-25 şeklinde kullanabilirsin
yine css içinde col flex değerini ataya bilirsin
col lg 4 flex: 0 0 auto veya flex: 0 0 0