Giriş Yap / Kayıt Ol

WM Aracı'na üyelikler tekrar açıldı! Kayıt olmak için TIKLAYIN!

Cevap Yaz Favorilerime Ekle
Seçenekler Stil
Geri Git   Forum > > PHP

PHP sorunuma yardım edermisiniz?

  #1  
Okunmamış 13 Ağustos 2019, 00:29
mvmirror Adlı Üyenin Avatarı
ByShako
 
Üyelik Tarihi: 14 Mart 2017
Yaş / Cinsiyet: 19 / Erkek
Konum: Azerbeycan
Ad, Soyad: Şa... Mu...
Mesajlar: 257
Beğeniler: 17 / 35
Ticaret: 1, 100%
Merhaba. Sitemin kodlarını tamamen kendim yazdım. Eskiden de zaten çalışıyordu.
Soru şu. Site soru cevap (Sınav gibi) sitesi. veritabanında 470 tane soru var.Şimdi yaptığım skript ilk önce 470 soruyu karıştırıyor.Daha sonra onların içinden 50 tanesini seçiyor ve 5 yanıtı yenide suffleyle karışıtırıyor ve bunu bir dat dosyasına yazıyor. Ama 50 tanesi yazmak yerine bazen 43 bazen 47 bazen de 38 gibi değişik rakamda soru yazıyor. Gerisinide boş yazmıyor orada bitiriyor. Bunu nasıl hall ede bilirim?

Kod:
PHP- Kodu:
    $ques_id=mt_rand();
    
    
$fileadress='users/exams/'.$ques_id.'.dat';
    
    
$examtime=time()+(60*$ex_sub['etime']);
    
    
$add_active_exams="INSERT INTO active_exams (id, ques_file, time, qid, subject) VALUES ('', '{$fileadress}', '{$examtime}', '{$ques_id}', '{$_GET['subject']}');";
mysqli_query($vt$add_active_exams);
$active_exam_id_update=mysqli_query($vt"UPDATE users SET active_exam_id='{$ques_id}' WHERE id={$sonuc['id']}");
    
// suallarin qarisdirilmasi ve baza faylina yazilmasi
$ex_qux mysqli_query($vt'select * from questions where subject="'.$_GET['subject'].'"');
              for(
$i=0;$i<$ex_qu_num;$i++){
  
$arr[$i] = mysqli_fetch_assoc($ex_qux);
}

shuffle($arr);
    
$f=fopen($fileadress'w+');
for (
$i=0;$i<$ex_sub['qpe'];$i++) {
    
$ques[$i]=$arr[$i];
    
$answ=array($ques[$i]['c_answer'],  $ques[$i]['e_answer1'], $ques[$i]['e_answer2'], $ques[$i]['e_answer3'], $ques[$i]['e_answer4']);
    
shuffle($answ);
    if (empty(
trim($ques[$i]['question']))==FALSE) {
    
$quizs.=trim($ques[$i]['id']).'|'.trim($ques[$i]['question']).'|'.trim($answ[0]).'|'.trim($answ[1]).'|'.trim($answ[2]).'|'.trim($answ[3]).'|'.trim($answ[4])."\n";
    }
}
        
fwrite($f$quizs);
        
fclose($f); 
WebMaVie.com sitesinin yöneticisi ve yazarı
  #2  
Okunmamış 13 Ağustos 2019, 01:52
Avatar Seçilmemiş
WM Aracı
 
Üyelik Tarihi: 14 Ocak 2018
Yaş / Cinsiyet: 46 / Erkek
Meslek: Programcı
Konum: İzmir
Ad, Soyad: Sa... Sa...
Mesajlar: 231
Beğeniler: 82 / 1
Ticaret: 0, 0%
o subject te o kadar soru vardır da ondan.

Random çekeceksin mysqlden.

select * from questions order by rand() limit 50;
  #3  
Okunmamış 14 Ağustos 2019, 22:29
mvmirror Adlı Üyenin Avatarı
ByShako
 
Üyelik Tarihi: 14 Mart 2017
Yaş / Cinsiyet: 19 / Erkek
Konum: Azerbeycan
Ad, Soyad: Şa... Mu...
Mesajlar: 257
Beğeniler: 17 / 35
Ticaret: 1, 100%
Alıntı:
SancarSaran Adlı Üyeden Alıntı
o subject te o kadar soru vardır da ondan.

Random çekeceksin mysqlden.

select * from questions order by rand() limit 50;
hayir o subjecte 470 soru var da olmasina. Ama bu yolu denemedim. Bideniyim
WebMaVie.com sitesinin yöneticisi ve yazarı
  #4  
Okunmamış 15 Ağustos 2019, 16:10
0ktay Adlı Üyenin Avatarı
Oktayserif.com.tr
 
Üyelik Tarihi: 01 Şubat 2018
Yaş / Cinsiyet: 20 / Erkek
Konum: Antalya
Ad, Soyad: Ok... Şe...
Mesajlar: 473
Beğeniler: 97 / 23
Ticaret: 1, 100%
Her seferinde 50 öğeyi çekerek kullanıcı artışı olduğu zaman yorabilirsin serveri.
Onun yerine PHP File kullanarak .txt ile çalışsan ?
Eğitimin pahalı olduğunu düşünüyorsanız, cehaletin bedelini hesaplayın.
Cevap Yaz Favorilerime Ekle


Konuyu toplam 1 kişi okuyor. (0 üye ve 1 Ziyaretçi)
 
Seçenekler
Stil
Normal Normal

Geri Git   Forum > PHP


Yetkileriniz
Konu açma yetkiniz: Yok
Cevap Yazma Yetkiniz Yok
Eklenti yükleme yetkiniz: Yok
Mesajınızı değiştirme yetkiniz: Yok

BB code: Açık
İfadeler: Açık
[IMG] Kodları: Açık
HTML kodu: Kapalı




Tüm Zamanlar GMT +3 Olarak Ayarlanmış. Şu anki Zaman: 05:51.