Arama butonu
Bu konudaki kullanıcılar: 1 misafir, 1 mobil kullanıcı
5
Cevap
343
Tıklama
0
Öne Çıkarma
fonksiyon boş dönüyor bir türlü ekrana yazdıramadım
H
6 yıl
Onbaşı
Konu Sahibi

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

DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.

Üye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.

Üye Ol Şimdi Değil





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

T
6 yıl
Yarbay

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.


Bu mesaja 1 cevap geldi.
H
6 yıl
Onbaşı
Konu Sahibi

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


Bu mesaja 1 cevap geldi.
İ
6 yıl
Yüzbaşı

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.



< Bu ileti mobil sürüm kullanılarak atıldı >
Bu mesaja 1 cevap geldi.

Bu mesajda bahsedilenler: @herdmr
H
6 yıl
Onbaşı
Konu Sahibi

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 >
Bu mesaja 1 cevap geldi.
İ
6 yıl
Yüzbaşı

Bilgi için sağolasın.



< Bu ileti mobil sürüm kullanılarak atıldı >


Bu mesajda bahsedilenler: @herdmr
DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.