• 06-08-2009, 10:32:27
    #1
    Anlatımın kolay olması açısından öncelikle kodu veriyorum.

    $chars = array("a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p",
    "q","r","s","t","u","v","w","x","y","z","0","1","2","3","4","5","6","7","8","9");
    
    $adet=$_GET['adet'];
    
    
    $current =$chars[rand(0,25)].$chars[rand(0,25)].$chars[rand(0,25)];
    $current değişkenin karakter sayısının $adet değişkeni kadar olmasını istiyorum, aşağıdaki gibi if döngüsü ile yapmaya çalıştım ama parse error verdi, bunu nasıl yapabilirim?

    $current = $chars[rand($0,25)]if ($kac=1; $kac<=$adet; $kac++;){
    	.$chars[rand(0,25)];
    }
  • 06-08-2009, 10:35:43
    #2
    Üyeliği durduruldu
    şahsen ben sorunuzdan birşey anlamadim
    strlen ile karakterin uzunluğuna erişip $kelime[0] gibide harflerien erişebilirsiniz. her metin ayni zamanda harf dizisidir. burdaki gibi 0 dediginizde ilk harfine erişebilirsiniz
  • 06-08-2009, 10:47:11
    #3
    mesela $adet=5 olduğunda $current değişkenin 5 karakterli olmasını istiyorum. php de yeniyim o yüzden çözümü bulamadım ama çabalıyorum, siz strlen deyince aklıma geldi belki substr($current, 0, $adet) kullanrak olur, ne dersiniz?
  • 06-08-2009, 10:48:31
    #4
    <?php
    $chars = array("a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p",
    "q","r","s","t","u","v","w","x","y","z","0","1","2","3","4","5","6","7","8","9");
    
    $adet=$_GET['adet'];
    
    $uzunluk=strlen($adet);
    $current="";
    for($i=0;$i<$uzunluk;$i++){
    $current.=$chars[rand(0,25)];  
    }
    echo $current;
    
    ?>
    yanlış anlamadysam böyle olması lazım
  • 06-08-2009, 10:49:37
    #5
    yanlış anlamışım o zaman böyle olması lazım
    <?php
    $chars = array("a","b","c","d","e","f","g","h","i","j","k", "l","m","n","o","p",
    "q","r","s","t","u","v","w","x","y","z","0","1","2 ","3","4","5","6","7","8","9");
    $adet=$_GET['adet'];

    $current="";
    for($i=0;$i<$adet;$i++){
    $current.=$chars[rand(0,25)];
    }
    echo $current;
    ?>
  • 06-08-2009, 10:53:22
    #6
    Sorunu şu şekilde çözdüm arkadaşlar sizlerin verdiği yöntemleride deneyeceğim.
    $current1 = $chars[rand(0,25)].$chars[rand(0,25)].$chars[rand(0,25)].$chars[rand(0,25)].$chars[rand(0,25)];
    $current=substr($current1, 0, $adet);
    edit: Karasancak senin verdiğin yöntem de çalışıyor, benimkinden daha sağlıklı bir yöntem. Çok teşekkürler.