PHP Döngüler Hakkında
-
Hocalar merhaba,
Ufak bir sorum olacak.
Bir döngü var elimde.
Wordpress veritabanındaki yüzlerce konu başlığını alarak çalışıyor ve bir takım işlemlere uğruyor. Burası önemli değil.
Şimdi bunu yaparken bana bütün işlemleri tamamlayıp, döngüyü bitirip en son çıktıyı veriyor.
Ben bunu istemiyorum. 1. döngü tamamlandığında sonucu ekrana basacak ve 2.'yi yapmaya başlayacak. Yani bana söyleye söyleye gitsin istiyorum. Durup çalışsın, durup çalışsın.
Nasıl yapacağım hakkında fikri olan veya 1'den 10'a kadar saydıran bir döngü ile örnek verebilecek var mı?
-
alt alta yazdığında olur zaten önce birini yapar sonra alttakine geçer. yada dediğini tam anlamadım
-
kod blounu atsan daha saglıklı olur sanki ona gore cvp vermek daha rahat olurdu
-
$sonuclar1 = mysql_query( "SELECT id, post_name, post_title FROM wp_posts WHERE post_type LIKE 'post' ORDER by id DESC limit 0,200"); while($veri=mysql_fetch_assoc($sonuclar1)) { if($veri['post_title'] == "th3-ultra") { echo "Evet! Doğru kullanıcı!"; } else { echo "Yanlış kullanıcı!"; } }
Mesela bu kodda WP veritabanına bağlanıp bütün başlıkları çekiyor, 200 tane başlığın her birine tek tek bakıp "th3-ultra" olup olmadığını kontrol ediyor ve ona göre ekrana baskı veriyor.
Yani bekliyor bekliyor 40 saniye kadar yükleniyor sayfa. En son durup sonucu veriyor.
Bunu istemiyorum.
1. kaydı kontrol etti mi? Evet! Doğru kullanıcı! diyecek. Bunu geçip 2.'yi de basacak ekrana. Tek tek yapacak.
-
$i = 1; while(true){ echo $i.' işlem tamamlandı'; if(!$kontrol){ // $kontrol değişkeni senin true olarak döndükce döngü sonsuza kadar gider durmasını istediğinde false olarak dönmesi gerekir. break; // burdaki "break" while ı sonlandırır. } $i++; }
Böyle basit bişeyle sonsuza kadar döngüye sokarsın hocam. Tabi kod bloğunu görmeden sadece işin işleyişini anlattım isteletini yani. -
php server tarafı bir script dilidir. Server da bütün işlemleri bitirmeden sana çıktı vermez. İMKANSIZ
-
Th3Ultra bunu yazdı
$sonuclar1 = mysql_query( "SELECT id, post_name, post_title FROM wp_posts WHERE post_type LIKE 'post' ORDER by id DESC limit 0,200"); while($veri=mysql_fetch_assoc($sonuclar1)) { if($veri['post_title'] == "th3-ultra") { echo "Evet! Doğru kullanıcı!"; } else { echo "Yanlış kullanıcı!"; } }
Mesela bu kodda WP veritabanına bağlanıp bütün başlıkları çekiyor, 200 tane başlığın her birine tek tek bakıp "th3-ultra" olup olmadığını kontrol ediyor ve ona göre ekrana baskı veriyor.
Yani bekliyor bekliyor 40 saniye kadar yükleniyor sayfa. En son durup sonucu veriyor.
Bunu istemiyorum.
1. kaydı kontrol etti mi? Evet! Doğru kullanıcı! diyecek. Bunu geçip 2.'yi de basacak ekrana. Tek tek yapacak.
bunun için echo dan sonra obflush(); ve flush(); ı yazman lazım. http://php.net/manual/en/function.flush.php
-
Ccaglayan bunu yazdı
$i = 1; while(true){ echo $i.' işlem tamamlandı'; if(!$kontrol){ // $kontrol değişkeni senin true olarak döndükce döngü sonsuza kadar gider durmasını istediğinde false olarak dönmesi gerekir. break; // burdaki "break" while ı sonlandırır. } $i++; }
Böyle basit bişeyle sonsuza kadar döngüye sokarsın hocam. Tabi kod bloğunu görmeden sadece işin işleyişini anlattım isteletini yani.Aslında bana lazım olan da break komutu gibi bir komut hocam.
Sonucu ekrana bastırdıktan sonra break; dedim. 1. döngüde durdurdu. Şimdi bunu nasıl 2'den devam ettireceğim?
-
Hocam
PHP ile jquery kullan
o sekilde yapabilirsin.
-
dhmm bunu yazdı
Hocam
PHP ile jquery kullan
o sekilde yapabilirsin.
Jquery dedin duygulandım :ı
Çok basit bir kod blogu yazabilir misin hocam? Ben geliştirsem onu?
-
sniperscope bunu yazdı
php server tarafı bir script dilidir. Server da bütün işlemleri bitirmeden sana çıktı vermez. İMKANSIZ
http://www.joeyrivera.com/2008/ob_start-ob_flush-flush-set_time_limit-give-user-feedback-during-execution/ şurayı bir inceleyin derim