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
Selam
Url sonundaki slash'ı silmek için fonksiyon
function slash_sil($url){
return rtrim($url, '/');
}
Veya
Url sonundaki slash'ı silmek için htaccess kodu kullanabilirsin
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} (.+)/$
RewriteRule ^ %1 [R=301,L]
Tabloları birleştirsen zaten hem id sini hemde verilerini çekebilirsin
örnek haber tablosuna kayıtlı kategori id ve kategori tablosu id verilerini
aşağıdaki 3 farklı SQL tipinde listeleye bilirsin kodlara bakıp anlayabilirsin mantığını
1. Farklı Tablodan Normal veri çekme Tablo oluşumu haber ve kategori
SELECT H.baslik, K.baslik FROM haber H, kategori K WHERE H.id = K.id
2. Farklı Tablodan INNER JOIN kullanarak veri çekme Tablo oluşumu haber ve kategori
SELECT H.baslik, K.baslik FROM haber H INNER JOIN kategori K ON K.id = H.id
3. Farklı Tablodan LEFT JOIN kullanarak veri çekme Tablo oluşumu haber ve kategori
SELECT H.baslik, K.baslik FROM haber LEFT JOIN kategori USING (id) WHERE 1=1;
Arkadaşın dediği gibi post tablosunda değilde ayrı tablo içerisinde yaparsan kullanımı daha kolay olur
post tablosuyla sss tablosunu birleştirip post idsine göre sss değeri ekleyedebilirsin
Ben aynı tabloda yapmak istiyorum diyorsan
bootstrap'ta Collapse,List group, Tabs Accordions ile alanları değerine göre listeletebilirsin
benim önerimde ayrı tabloda verileri kaydedip listeletmen çümkü post içerinde karmaşaya sebeb olur
içinden çıkamassınız ayrıca SQL LIMIT sorgusuyla verileri sınırlı sayıda listeletebilirsin
Buyur arkadaşım kod yazdım işini görür
iki farklı tablodaki tüm sutunları pdo ile birleştirip verileri yazdırabilirsin php 8 destekler
Sql Tablo
CREATE TABLE `kategori` (
`kategori_id` int UNSIGNED NOT NULL,
`kategori_title` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
`kategori_url` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
INSERT INTO `kategori` (`kategori_id`, `kategori_title`, `kategori_url`) VALUES
(1, 'Eğitim', 'egitim');
CREATE TABLE `post` (
`post_id` int UNSIGNED NOT NULL,
`post_title` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
`post_url` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
`post_kategori` int NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
INSERT INTO `post` (`post_id`, `post_title`, `post_url`, `post_kategori`) VALUES
(1, 'Pdo eğitimi', 'pdo-egitimi', 1);
ALTER TABLE `kategori`
ADD PRIMARY KEY (`kategori_id`);
ALTER TABLE `post`
ADD PRIMARY KEY (`post_id`);
ALTER TABLE `kategori`
MODIFY `kategori_id` int UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=2;
ALTER TABLE `post`
MODIFY `post_id` int UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=2;
Php Pdo iki Farklı Tablodan Sutun verilerini listemele
$stmt = $pdo->query("SELECT * FROM post INNER JOIN kategori ON post.post_id = kategori.kategori_id LIMIT 0,1");
while ($row = $stmt->fetch()) {
$row["post_title"]
$row["post_kategori"];
$row["kategori_title"];
$row["kategori_url"];
selam root3r [email protected] mail'e yazabilir veya isteklerini burada paylaşarak yardım talep edebilirsin