• 16-05-2016, 07:14:08
    #1
    Merhaba arkadaşlar "sayi.txt" dosyamda aynı olan veriyi bulan bir fonksiyonum var

    // Text dosya içeriği
    1|2|3|4|5|6|7|8|9|10

    $sayi=rand(1,15);
    $kontrol=text_fonksiyon($sayi);  // fonksiyonum kontrol sonrası -var-yok- diyor.
    
    if($kontrol=="yok") { echo"sayı yokmuş"; }
       else{ echo"sayı var"; }
    dediğimde bana "var", "yok" diyor amma ve lakin, ben bu fonksiyona 5 sayısını girdiğimde else "var" demek yerine tekrar random çalıştırıp olmayan sayıyı bulup yani "11" yokmuş deyip duracak.


    --[random_sayi] > 5
    ------[text_kontrol_et] > 5 var
    ---------[sayi_varsa_donguyu_basa_al] > 5 varmış tekrar random üret.
    ------------[sayi_yoksa] > 11 sayısı yokmuş dur. ve yazdır ekrana

    "Rahat anlatabilmek için sayısal örnek verdim. asıl amacım kelime kontrol etmek için kullanacağım"
  • 16-05-2016, 10:41:16
    #2
    eğer yanlış anlamadıysam bu işinizi görecektir.
    iyi çalışmalar.
    function kontrol($param)
    {
    	$string  = "1|2|3|4|5|6|7|8|9|10|11";
    	$explode = explode("|",$string);	
    	if (in_array($param, $explode)) 
    		return "var";	
    	else
    		return $param;
    }
    echo kontrol(5);
  • 16-05-2016, 20:39:04
    #3
    codefix adlı üyeden alıntı: mesajı görüntüle
    eğer yanlış anlamadıysam bu işinizi görecektir.
    iyi çalışmalar.
    function kontrol($param)
    {
    	$string  = "1|2|3|4|5|6|7|8|9|10|11";
    	$explode = explode("|",$string);	
    	if (in_array($param, $explode)) 
    		return "var";	
    	else
    		return $param;
    }
    echo kontrol(5);
    Üstadım ilgin için teşekkür ederim, ancak şuan kullandığım fonksiyon yapısıda budur eğer sayı varsa tekrar döngüye girip olmayan sayıyı bulacak ):
  • 17-05-2016, 17:08:36
    #4
    Kimlik doğrulama veya yönetimden onay bekliyor.
    dursunkoca adlı üyeden alıntı: mesajı görüntüle
    Üstadım ilgin için teşekkür ederim, ancak şuan kullandığım fonksiyon yapısıda budur eğer sayı varsa tekrar döngüye girip olmayan sayıyı bulacak ):
    <?php
    function s_varmi($num) {
    	$aa = file_get_contents('dosya.txt');
    	$bb = explode('|',$aa);
    	for($i=0;$i<=count($bb)-1;$i++) {
    		if($bb[$i]==$num) {
    			return true;
    		}
    	}
    	return false;
    }
    
    $kontrol = true;
    while($kontrol) {
    	$nm = rand(0,15);
    	$kontrol = s_varmi($nm);
    }
    echo "Yok: $nm";
    ?>
    Aradağınız bu sanırım

    dosya.txt içeriği: 0|1|2|3|4|5|6|7|8|9|10|11|12|13
  • 17-05-2016, 23:21:51
    #5
    sawashan adlı üyeden alıntı: mesajı görüntüle
    <?php
    function varmi($num) {
    	$a = file_get_contents('dosya.txt');
    	$a = explode('|',$a);
    	for($i=0;$i<=count($a)-1;$i++) {
    		if($a[$i]===$num) {
    			return true;
    		}
    	}
    	return false;
    }
    
    $kontrol = true;
    while($kontrol) {
    	$num = rand(0,15);
    	$kontrol = varmi("$num");
    }
    echo "Yok: $num";
    ?>
    Aradağınız bu sanırım

    dosya.txt içeriği: 0|1|2|3|4|5|6|7|8|9|10|11|12|13

    Hocam ellerin dert görmesinde Parse error: syntax error, unexpected '$a' (T_VARIABLE) in C:\AppServ\www\txt-veri\index.php on line 3

    hatası alıyorum nedendir acaba
  • 18-05-2016, 09:29:51
    #6
    dursunkoca adlı üyeden alıntı: mesajı görüntüle
    Hocam ellerin dert görmesinde Parse error: syntax error, unexpected '$a' (T_VARIABLE) in C:\AppServ\www\txt-veri\index.php on line 3

    hatası alıyorum nedendir acaba
    Dosyayı yaparken çalışıyordu şimdi alıp denedim bendede hata verdi en sevmediğim olay
  • 18-05-2016, 13:06:15
    #7
    Bu böyle olmayacak en iyisi siz dosyayı indirin.

    http://dosya.co/pe8ctlpec082/dosya.rar.html
  • 18-05-2016, 13:16:11
    #8
    sawashan adlı üyeden alıntı: mesajı görüntüle
    Bu böyle olmayacak en iyisi siz dosyayı indirin.

    http://dosya.co/pe8ctlpec082/dosya.rar.html
    Ek olarak @sawashan yardımlarıyla bende olarak txt dosyamıza olmayan sayıları yazdırarak random limiti durunca uyarı vermesini sağladım.

    <?php
    function s_varmi($num) {
    $aa=file_get_contents('dosya.txt');
    $bb=explode('|',$aa);
    for($i=0;$i<=count($bb)-1;$i++) {
    if($bb[$i]==$num) {
    
    return true;
    }
    }
    return false;
    }
    
    $toplam_sayi="10";
    $text_cek=file_get_contents('dosya.txt');
    $text_bol=explode('|',$text_cek);
    $text_say= count($text_bol);
    if($text_say==$toplam_sayi) { echo"Kontrol edilecek sayı kalmadı"; } else{
    
    $kontrol=true;
    while($kontrol) {
    $nm=rand(0,$toplam_sayi);
    $kontrol=s_varmi($nm);
    }
    $txtdosya = "dosya.txt";
    $txtveri = file($txtdosya);
    			$txtsonuc = count($txtveri);
    			$txtekle = fopen("$txtdosya", "a");
    			fputs($txtekle, "$nm|");
    			flock($txtekle, 3);
    			fclose($txtekle);
    
    
    echo "Yokmuş Ekledim: $nm";
    }
    
    ?>