• 03-01-2014, 17:35:14
    #19
    Üyeliği durduruldu
    BR9 adlı üyeden alıntı: mesajı görüntüle
    Hocam dediğim gibi koşul belirtmemem gerekiyor ve md5 veya herhangi neyse kodu bir anda tek sorguyla tüm alanlara vermem gerekiyor. Koşul belirtsem zaten yapılır hocam fakat teker teker yapmak zorunda kalırım busefer.

    --R10.NET; Flood Engellendi -->-> Yeni yazılan mesaj 16:16:42 -->-> Daha önceki mesaj 16:15:21 --



    Aynı değere nasıl geliyor ben onu anlayamadım. Daha öncesinde sahadan.com'dan bot ile veri çektik. Gelen tüm değerleri veritabanına eklettirdik md5(time()) kodu ile benzersiz bir rakam oluşturttuk her birine. Vallahi hiç WHERE vs kullanmadan teker teker her birine ayrı değer girdi.

    For'a sokup sleep(1) yapmıştık. Her döngüde 1 saniye bekle öyle çalış hepsinede farklı rakamlar verdi md5

    Fakat şuan böyle yapmasına şaşırdım bir çıkarı olmalı mutlaka
    Önce sql ile firma kodlarını çek. Sonra where kullanarak random sayıyı ekle.
  • 03-01-2014, 17:42:44
    #20
    digiklan adlı üyeden alıntı: mesajı görüntüle
    bu işini görür
    //tüm satırları sorgula
    $sorgu    =    mysql_query("SELECT * FROM firma_kaydi"); 
    //satırları teker teker array yap
    while($fatura = mysql_fetch_assoc($sorgu)){
    //random rakam ve micro time ile benzersiz sayi olustur.
    $fatura_no = microtime().rand(11111111,99999999);
    //benzersiz sayiyi gelen satıra yaz, burada WHERE koşulu id kolonu yoksa 
    //firma ismi ya da firma ile ilgili benzersiz değişkenin olduğu kolonu kullanabilir.
    mysql_query("UPDATE firma_kaydi SET firmano = '$fatura_no' WHERE id = $fatura['id']"); 
    
    }

    Bu kodun where koşulu tablodaki herhangi bir sütun olabilir. (Aynı verileri içermeyen) eğer tek sütunda aynı veri varsa birtane daha where ekleyerek her döngüde benzersiz koşulu sağlayabilirsiniz. Bu şekilde where belirterek istediğiniz sonucu alırsınız.
  • 03-01-2014, 18:19:34
    #21
    BR9 adlı üyeden alıntı: mesajı görüntüle
    Hocam zaten önemli olanda o firmanın idsi verilmeden vesayre tüm hepsine uygulamam gerekmekte.

    Ayriyetten md5(time()) kodunuda for'un içerisine alıp sleep(1) uyguladım sonuç aynı. Bazıları md5(rand) vs diyorlar fakat nekadar dersek diyelim hepsine ilk karmaşık rakamı ekleyecek.

    Benim amacım her sütuna farklı bir rakam girmesi. WHERE kullanmadan firmayı belirtmeden vs
    Tablo açtım denedim phpmyadmin'den
    UPDATE tablo SET alan = MD5(rand())
    komutunu kullandım tüm alanlara farklı girdi
  • 05-01-2014, 03:06:24
    #22
    Benzersiz değerler üretmek için uniqid yada mt_rand fonksiyonlarını kullanabilirsiniz.
  • 05-01-2014, 13:28:47
    #23
    F.Gungor adlı üyeden alıntı: mesajı görüntüle
    Tablo açtım denedim phpmyadmin'den
    UPDATE tablo SET alan = MD5(rand())
    komutunu kullandım tüm alanlara farklı girdi
    Allah Allah.. Hocam md5(time()) komutunu kullandım olmadı md5(rand()) komutunuda kullandım olmamıştı. Hallettim sorunu ama basit birşeydi niye böyle oldu anlamadım daha önce yapmıştım çünki. Neyse yardımlarınız için teşekkürler gerçekten.