Merhaba, Ziyaretçi. Lütfen giriş yapın veya üye olun.
Aktivasyon mailiniz gelmediyse buraya tıklayın.
09, 2008, 04:05:07 am
42744 Mesaj 8090 Konu Gönderen: 17931 Üye
Son üye: medist
Turk-Php.Com Forum  |  Yardım Forumları  |  PHP Yardım Forumu  |  veritabanından rasgele veri getirmek « önceki sonraki »
Sayfa: [1] Yazdır
Yazan Konu: veritabanından rasgele veri getirmek  (Okunma Sayısı 173 defa)
hahaybune
Yeni Kullanıcılar
*
Offline Offline

Mesaj Sayısı: 8


Üyelik Bilgileri
veritabanından rasgele veri getirmek
« : 03, 2008, 02:54:26 pm »

merhaba arkadaşlar.. bir ödev için uğraşıyorum fakat bir sıkıntı ile karşılaştım.. Yapmak istediğim projede öğrenci testte hangi ünitelerden soru çıkabileceğini, sorunun zorluk derecesini ve testte kaç soru olacağını kendisi seçecek..

öğrencinin isteklerine göre soruları çağırırken herzaman aynı soruların değil rasgele soruların gelmesini istiyorum. mesela rasgele gelenlerden ilki 3. üniteye, ikincisi 5. üniteye ait gibi..

Kod:
mysql_query("select * from sorular where zorluk='$zorluk' and unite_id='$unite[unite_id]' ORDER BY RAND()");

yukardaki kod ile zorluk derecesini ve sorunun ünitesini kontrol etmek istedim. Çalıştırdığımda ilk olarak zorluk derecesine ve üniteye göre soruları aldığını daha sonra rasgele seçim yaptığını gördüm. Yani eğer 1. üniteden zor derecede soru seçmişsem ve bu kriterde 2 soru varsa herzaman ilk iki soruya bunları getiriyor. Yenile dediğimde ikisi kendi arasında yerdeğiştiriyor. Yani ne denediysem testin ilk sorusu olarak mesela 1. üniteden değilde 3. üniteden bir soru getiremedim. Yardımlarınızı bekliyorum..
 Roll Eyes Roll Eyes
Logged
dias
Yeni Kullanıcılar
*
Offline Offline

Mesaj Sayısı: 3


Üyelik Bilgileri
Ynt: veritabanından rasgele veri getirmek
« Yanıtla #1 : 04, 2008, 12:15:22 am »

Merhaba,
Ne sormak istediğini tam anlamadım. Yazdıgın kodda kesin olarak bir uniteden almasını istemişssin soruları sonra niye diğer bir uniteden almadığını sormuşsun. Eğer uniteye bağlı kalmamasını istiyorsan, yane sırf senin seçtğin zorlukta ama o zorluk derecesinde rastgele seçmesini istiyorsan
Kod:
mysql_query("select * from sorular where zorluk='$zorluk' ORDER BY RAND()");
yazman yeterli.
Saygılar
Logged
mahirix
PHP Stajyeri
**
Offline Offline

Mesaj Sayısı: 192



Üyelik Bilgileri
Ynt: veritabanından rasgele veri getirmek
« Yanıtla #2 : 05, 2008, 08:07:44 am »

mysql_query("select * from sorular where zorluk='$zorluk' ORDER BY RAND() limit 1");

Limit değişkeniylede istdiğin kadar veriyi yazdırırsın.
Logged

Sayfa: [1] Yazdır 
« önceki sonraki »
Gitmek istediğiniz yer:  


Turk-Php.Com Forum | SMF Forum Software © 2005, Simple Machines LLC. All Rights Reserved.