v2.5.2
Giriş yap

Php Üye Oturumuna Göre Listeleme Nasıl Yapılır

yazilimyolcusu
572 defa görüntülendi

Arkadaşlar merhaba oturum açan kişinin bilgilerini kullanıcı adına göre nasıl listeletebilirim? Aşağıdaki gibi yazdığımda bütün üyeler listeleniyor çünkü.

$kullanicilarigoster = $db->query("SELECT kullanicilar_adisoyadi, kullanicilar_kullaniciadi, kullanicilar_eposta,
kullanicilar_telefon, kullanicilar_dogumtarihi FROM kullanicilar WHERE kullanicilar_kullaniciadi");
Cevap yaz
Cevaplar (9)
emmir2
976 gün önce

foreach döngüsü olduğu için tüm verileri alıyor

foreach döngüsünü kaldırıp

<?= $kullanicigoster['kullanicilar_cinsiyet']?>
olarak çekersen sadece giriş yapan kullanıcı verisini çeker

yazilimyolcusu
976 gün önce

Kodlar çalıştı. Peki sormak istediğim bir şey daha var. Neden "limit" i "1" verdik? Bir de "execute" alanında neden "array" kullandık? Daha doğrusu "execute" alanında ne yaptığımızı tam olarak anlayamadım. Anlatabilirseniz sevinirim.

yazilimyolcusu
976 gün önce

İki adet kullanıcı var veritabanında. Dediğiniz gibi yaptım ve sonuç şu şekilde. Aşağıdaki resme bakabilirsiniz. Bu arada kodları da kendime göre şöyle uyarladım.

$kullanicilarigoster = $db->prepare("SELECT * FROM kullanicilar WHERE kullanicilar_id=:id LIMIT 1");
$kullanicigoster = $kullanicilarigoster->execute(array(":id"=>$_SESSION['admin']['kullanicilar_id']));
$kullanicigoster = $kullanicilarigoster->fetch(PDO::FETCH_ASSOC);
foreach ($kullanicigoster as $kullanici) {
<div class="adi-div">Adı : <?php echo $kullanici['kullanicilar_adisoyadi']; ?> </div>
<div class="cinsiyet-div">Cinsiyet : <?php echo $kullanici['kullanicilar_cinsiyet']; ?> </div>
<div class="eposta-div">E-Posta : <?php echo $kullanici['kullanicilar_eposta']; ?> </div>
<div class="kullaniciadi-div">Kullanıcı Adı : <?php echo $kullanici['kullanicilar_kullaniciadi']; ?> </div>
<div class="sifresi-div">Şifresi : <?php echo $kullanici['kullanicilar_sifre']; ?> </div>
<div class="telefon-div">Telefon : <?php echo $kullanici['kullanicilar_telefon']; ?> </div>

https://www.hizliresim.com/goxbd7x

emmir2
976 gün önce

örnek bırakayım

$query = $db->prepare("SELECT * FROM kullanici where id=:id LIMIT 1");
$kullanici = $query->execute(array(":id"=>$_SESSION['kullanici']['id'] 'Kullanıcı id nerden geliyosa buraya onu yazdır' ));
$kullanici = $query->fetch(PDO::FETCH_ASSOC);

verileri yazdırmak içinde

<div class="kullanici">
    <?= $kullanici['ad']; ?>
    <?= $kullanici['cinsiyet']; ?>
    <?= $kullanici['kadi']; ?>
    <?= $kullanici['pass']; ?>
    <?= $kullanici['tel']; ?>
</div>
yazilimyolcusu
976 gün önce

Tekrar merhaba. Önceden de yazdığım gibi, Hesabım sayfasını düzenlemeye çalışıyorum. Kullanıcı var mı yok mu onun kontrolünü yaptırmıyorum. Paylaşılan örnekler anladığım kadarıyla kullanıcı var mı yok mu onu kontrol ediyor. Yapmak istediğim sayfanın bir örneğini koyuyorum. Resim aşağıda. "Aysel" kullanıcısı girmişse "aysel'in"; "ahmet" kullanıcısı girmişse "ahmet" in bilgilerinin çıkması lazım.
https://www.hizliresim.com/pjsm1my

saffetoge
977 gün önce

Selamlar,

Giriş yapmış kullanıcının id sini nerede tutuyorsunuz ? eğer SESSİON içinde ise şu kullanımı deneyin

ayrıca WHERE kullandığınız yerde query methodu değil de prepare kullanın daha güvenli olur.


 $query = $db->prepare("SELECT * FROM kullanicilar WHERE kullanicilar_kullaniciID=:id LIMIT 1");
$query->execute(array(
    "id" => $_SESSION['id']
));
$row = $query->fetch(PDO::FETCH_ASSOC);

if ($row) {
    print_r($row);
} else {
    echo "Böyle bir kullanıcı bulunamadı!";

}
yazilimyolcusu
977 gün önce

Ben kullanıcı var mı yok mu, onu bulmaya çalışmıyorum. Oturum kontrollerini yaptım zaten. Mesela ben admin olarak oturum açtım. Admin kullanıcısına ait bilgilerin, hesabım sayfasında çıkması lazım. Telefon, mail, şifre, kullanıcı adı, gerçek ad-soyad gibi. Onları listeletmeye çalışıyorum. Ama listelettiğimde "admin" kullanıcısıyla oturum açmış olsam dahi diğer kullanıcıların bilgileri de listeleniyor, yukarıdaki kod ile.

egemennk1
977 gün önce

Merhaba,

$query = $db->prepare("SELECT * FROM kullanicilar WHERE kullanicilar_kullaniciadi=:kullanicilar_kullaniciadi");
$query->execute(array(
    "kullanicilar_kullaniciadi" => $kadi
));
$row = $query->fetch(PDO::FETCH_ASSOC);

if ($row) {
    print_r($row);
} else {
    echo "Böyle bir kullanıcı bulunamadı!";
}

Bu kodların çalışması gerekiyor.

yazilimyolcusu
977 gün önce

Sorunum devam ediyor. Cevap verecek yok mu acaba arkadaşlar? Bu arada "where" alanına "id" verdim ve bütün kayıtlar geldi ama yine oturum sahibine göre getirtemedim.