Şimdi Ara

fonksiyon boş dönüyor bir türlü ekrana yazdıramadım

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
7
Cevap
0
Favori
323
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • hatayı bulamadım forumlarda araştırdım dediklerini yaptım olmadı gözümden kaçan bişi var
    butona tıkladığımda fonksiyon çalışıyor ama boş dönüyor

    function evev(){

    while ($liste = $listele->fetch(PDO::FETCH_ASSOC)) {
    $listele = $db->query("select * from analiz ");
    $listele->execute();


    $Ev_Sahibi = $liste['Ev_Sahibi'];
    echo $Ev_Sahibi;



    }


    }



    $ev_ev=$_POST["ev"];

    if (isset($ev_ev)==1 && $ev_ev=="EV/EV") {

    evev();
    die();

    }




    verdiği hata :
    quote:

    Notice: Undefined variable: listele in C:\xampp\htdocs\listele.php on line 84

    Fatal error: Uncaught Error: Call to a member function fetch() on null in C:\xampp\htdocs\listele.php:84 Stack trace: #0 C:\xampp\htdocs\listele.php(107): evev() #1 {main} thrown in C:\xampp\htdocs\listele.php on line 84



    < Bu mesaj bu kişi tarafından değiştirildi herdmr -- 19 Temmuz 2019; 14:1:35 >







  • Hata mesajında geçen 'Call to a member function fetch() on null' koddaki fetch fonksiyonu boş döndürüyor demek. Oradaki while döngüsü yanlış kurgulanmış gibi görünüyor; döngü içinde db->query defalarca çalıştırılıyor normalde o döngüden önce bir kez çalıştırılıp bir recordset (veya benzeri bir nesne) döner, döngüde o nesneyi işlersin. döngü argümanı $liste = $listele->fetch(PDO::FETCH_ASSOC) da bir diger hata, $listele'nin tanımlanmamış olması ki hata mesajında onu da 'Notice' olarak veriyor.
  • quote:

    Orijinalden alıntı: Tuğkan-0153

    Hata mesajında geçen 'Call to a member function fetch() on null' koddaki fetch fonksiyonu boş döndürüyor demek. Oradaki while döngüsü yanlış kurgulanmış gibi görünüyor; döngü içinde db->query defalarca çalıştırılıyor normalde o döngüden önce bir kez çalıştırılıp bir recordset (veya benzeri bir nesne) döner, döngüde o nesneyi işlersin. döngü argümanı $liste = $listele->fetch(PDO::FETCH_ASSOC) da bir diger hata, $listele'nin tanımlanmamış olması ki hata mesajında onu da 'Notice' olarak veriyor.
    fonksiyon dışında kodda bir sorun yok ekrana yazdırabiliyorum fonksiyon içine aldığımda sorun çıkıyor anlamaya çalışıyorum şu ana kadar çalıştıramadım php bilgim sınırlı olduğu için sorun yaşıyorum




  • herdmr H kullanıcısına yanıt
    Selamunaleyküm,
    $listele değişkeni while döngüsünün içerisinde verileri çekiyor dikkat edersen, ancak while döngüsüne girerken $listele içinde veri varmış gibi $listele üzerinden fetch fonksiyonunu çağırmışsın. Zaten vonderplanitz bundan bahsetmiş. Yapman gereken while dan önce:
    $listele = db->query("select ...")
    şeklinde $listele değişkenini doldurman lazım.
  • quote:

    Orijinalden alıntı: imammmm

    Selamunaleyküm,
    $listele değişkeni while döngüsünün içerisinde verileri çekiyor dikkat edersen, ancak while döngüsüne girerken $listele içinde veri varmış gibi $listele üzerinden fetch fonksiyonunu çağırmışsın. Zaten vonderplanitz bundan bahsetmiş. Yapman gereken while dan önce:
    $listele = db->query("select ...")
    şeklinde $listele değişkenini doldurman lazım.
    arkadaşlar teşekürler sorunu hallettim baya yordu beni ama sonunda oldu bu tür sorun yaşayan arkadaşlar için açıklama yapayım

    fonksiyonun içine global $db; çağırmanız lazım yani veritabanınızı atadığınız degişkeni


    function evev(){

    global $db;

    }



    < Bu mesaj bu kişi tarafından değiştirildi herdmr -- 19 Temmuz 2019; 16:34:1 >
  • herdmr H kullanıcısına yanıt
    Bilgi için sağolasın.
  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.