• 22-11-2016, 23:37:49
    #1
    Öncelikle ne yapmak istiyorum?

    sınıfta öğrencilere bir etkinlikte söz hakkı verirken sorun oluyor, onun için böyle birşey geldi aklıma. Buhttp://www.codethislab.com/showcase/...wheel_fortune/ sitedeki gibi yapamam baya zor o, ama mümkünse bir butona bastıgımda
    rast gele listeden bir isim seçse oda işimi görür. Css ile ona basitte olsa bişeyler ayarlarım ben ıns.
    Buradaki kod random olarak secıyor ama aynı ısımlerı secıyor, sizden istedigım mümkünse butun liste bitene kadar karısık ama her kişiyi 1 defa secıcek liste bıtıncede oan göre liste bitti diye uyarı verebılmesı

    <?php    
    $a=array("Ahmet","Ayşe","Talha","Veli","Zeynep"); 
        $anahtar = array_rand($a,1); 
        echo $a[$anahtar]; 
    ?>

    umarım anlatabılmısımdır yardımcı olabılırsenız cok sevınırım
  • 23-11-2016, 10:31:38
    #2
    Kimlik doğrulama veya yönetimden onay bekliyor.
    mikoc adlı üyeden alıntı: mesajı görüntüle
    Öncelikle ne yapmak istiyorum?

    sınıfta öğrencilere bir etkinlikte söz hakkı verirken sorun oluyor, onun için böyle birşey geldi aklıma. Buhttp://www.codethislab.com/showcase/...wheel_fortune/ sitedeki gibi yapamam baya zor o, ama mümkünse bir butona bastıgımda
    rast gele listeden bir isim seçse oda işimi görür. Css ile ona basitte olsa bişeyler ayarlarım ben ıns.
    Buradaki kod random olarak secıyor ama aynı ısımlerı secıyor, sizden istedigım mümkünse butun liste bitene kadar karısık ama her kişiyi 1 defa secıcek liste bıtıncede oan göre liste bitti diye uyarı verebılmesı

    <?php    
    $a=array("Ahmet","Ayşe","Talha","Veli","Zeynep"); 
        $anahtar = array_rand($a,1); 
        echo $a[$anahtar]; 
    ?>

    umarım anlatabılmısımdır yardımcı olabılırsenız cok sevınırım

    <?php
    ob_start();
    session_start();
    
    if(@!$_SESSION['last']) { $_SESSION['last'] = array(); }
    if(@!$_SESSION['data']) { $_SESSION['data'] = explode("\n",file_get_contents('ogrenci.txt')); }
    
    if(count($_SESSION['last']) == count($_SESSION['data'])) {
    	echo "Liste bitti.";
    	session_unset();
    	session_destroy();
    } else {
    	retry:
    	$rnd = rand(0,count($_SESSION['data'])-1);
    	for($i=0;$i!=count($_SESSION['last']);$i++) {
    		if($_SESSION['last'][$i] == $rnd) {
    			goto retry;
    		}
    	}
    	$_SESSION['last'][count($_SESSION['last'])] = $rnd;
    	echo $_SESSION['data'][$rnd]."<br>";
    }
    ob_end_flush();
    ?>
    ogrenci.txt

    Ahmet
    Mehmet
    Ayşe
    Duygu
    İsmail
    Hüseyin
    Fırat
    Zehra
    Suleyman
    Berfin
    Okan
    Sinem
    Sanem
    Kemal
    Burhan
    Aysu
    Can
  • 23-11-2016, 10:38:45
    #3
    1 kişi seçicek hocam, bütün listeyi karıştırıp değil hepsini yazdırmayacak, mümkünse liste bitene kadar aynı kişiyi tekrar seçmeyecek bu olabilirse çok iyi olur :-)
  • 23-11-2016, 23:15:11
    #4
    EdgeBear adlı üyeden alıntı: mesajı görüntüle
    isimler.txt;
    Ali
    Burak
    Hasan
    Mert
    Berkay
    Can
    index.php;
    <?php
    session_start();
    
    $isimler                 = explode(PHP_EOL, file_get_contents('isimler.txt'));
    if (!isset($_SESSION['isimler'])) {
    	$_SESSION['isimler'] = $isimler;
    }
    $isimler_sayisi          = count($_SESSION['isimler']);
    
    if ($isimler_sayisi > 0) {
    	$rasgele_isim        = array_rand($_SESSION['isimler']);
    	echo $_SESSION['isimler'][$rasgele_isim];
    	unset($_SESSION['isimler'][$rasgele_isim]);
    } else {
    	unset($_SESSION['isimler']);
    	$_SESSION['isimler'] = $isimler;
    	echo 'Elemeler Bitti';
    }
    ?>
    sawashan adlı üyeden alıntı: mesajı görüntüle
    <?php
    ob_start();
    session_start();
    
    if(@!$_SESSION['last']) { $_SESSION['last'] = array(); }
    if(@!$_SESSION['data']) { $_SESSION['data'] = explode("\n",file_get_contents('ogrenci.txt')); }
    
    if(count($_SESSION['last']) == count($_SESSION['data'])) {
    	echo "Liste bitti.";
    	session_unset();
    	session_destroy();
    } else {
    	retry:
    	$rnd = rand(0,count($_SESSION['data'])-1);
    	for($i=0;$i!=count($_SESSION['last']);$i++) {
    		if($_SESSION['last'][$i] == $rnd) {
    			goto retry;
    		}
    	}
    	$_SESSION['last'][count($_SESSION['last'])] = $rnd;
    	echo $_SESSION['data'][$rnd]."<br>";
    }
    ob_end_flush();
    ?>
    ogrenci.txt

    Ahmet
    Mehmet
    Ayşe
    Duygu
    İsmail
    Hüseyin
    Fırat
    Zehra
    Suleyman
    Berfin
    Okan
    Sinem
    Sanem
    Kemal
    Burhan
    Aysu
    Can


    EdgeBear adlı üyeden alıntı: mesajı görüntüle
    isimler.txt;
    Ali
    Burak
    Hasan
    Mert
    Berkay
    Can
    index.php;
    <?php
    session_start();
    
    $isimler                 = explode(PHP_EOL, file_get_contents('isimler.txt'));
    if (!isset($_SESSION['isimler'])) {
    	$_SESSION['isimler'] = $isimler;
    }
    $isimler_sayisi          = count($_SESSION['isimler']);
    
    if ($isimler_sayisi > 0) {
    	$rasgele_isim        = array_rand($_SESSION['isimler']);
    	echo $_SESSION['isimler'][$rasgele_isim];
    	unset($_SESSION['isimler'][$rasgele_isim]);
    } else {
    	unset($_SESSION['isimler']);
    	$_SESSION['isimler'] = $isimler;
    	echo 'Elemeler Bitti';
    }
    ?>








    ikinizede çok teşekkür ederim, iki kodda sıkıntısız çalılısıyor Allah razı olsun :-)