• 03-01-2014, 15:43:07
    #1
    Arkadaşlar veritabanındaki tablomun içerisine md5 time fonksiyonu ile karışık rakam oluşturmam gerekiyor hepsine. Yani firma numarası oluşturucam fakat 180 kayıt var tek sorguda hepsine 2324125 gibi rakam girmem lazım hepsi birbirinden benzersiz olacak şekilde

    sleep(1) vs tüm komutları denedim olmadı.

    bu şekilde yapmaktayım

    <?php
    
    $md5   = substr(md5(time()));
    
    mysql_query(" UPDATE firma_kaydi SET firmano = '".$md5."' ");
    
    
    ?>
    
    bu şekilde yapınca haliyle tüm firmaların firma numarasını aynı yapıyor. Umarım anlatabildim kendimi
  • 03-01-2014, 15:47:58
    #2
    time time() olması lazım yazım yanlış gibi görünüyor. Başlıkta doğru kodda hata var. şuan sadece "time" kelimesini şifreliyor görünüyor.
  • 03-01-2014, 15:49:12
    #3
    cleaner80 adlı üyeden alıntı: mesajı görüntüle
    time time() olması lazım yazım yanlış gibi görünüyor. Başlıkta doğru kodda hata var.
    Hocam zaten öyle yazıyorum md5(time()) şeklinde oraya eksik yazmışım sorunum bu değil sorunum veritabanına tüm rand rakamları aynı olarak girmesi. Benim amacım ise tek bir UPDATE sorgusu ile farklı farklı rakam kaydettirmek
  • 03-01-2014, 15:51:04
    #4
    <?php
    
    for ( $i=1; $i<181; $i++ ){
    
    $md5   = substr(md5(time()));
    
    mysql_query(" UPDATE firma_kaydi SET firmano = '".$md5."' where id='$i' ");
    
    }
    
    ?>
    gibi bir yapı ile döngü içerisine alıp tek tek yazdırın.
  • 03-01-2014, 15:51:22
    #5
    Edit: Yukarıdaki verilen kod doğru çalışır ben yanlış bakmışım olaya.
  • 03-01-2014, 15:53:15
    #6
    Edit: Benden önce yazılmış
  • 03-01-2014, 15:57:21
    #7
    PsdBul adlı üyeden alıntı: mesajı görüntüle
    <?php
    
    for ( $i=1; $i<181; $i++ ){
    
    $md5   = substr(md5(time()));
    
    mysql_query(" UPDATE firma_kaydi SET firmano = '".$md5."' where id='$i' ");
    
    }
    
    ?>
    gibi bir yapı ile döngü içerisine alıp tek tek yazdırın.
    Hocam malesef for ilede olmuyor



    	$sorgu	=	mysql_query("SELECT * FROM firma_kaydi");
    	$md5	=	substr(md5(time()),0,7);
    	
    	for($i=1; $i<181; $i++){
    
    		mysql_query("UPDATE firma_kaydi SET firmano = '".$md5."'");
    		
    	}

    yapmama rahmen olmadı gene hepsine aynı rakamı giriyor. sleep(1) yapsam bile her forda 1 saniye bekle desem bile bu şekilde oluyor gerçekten ilginç.
  • 03-01-2014, 15:58:41
    #8
    BR9 adlı üyeden alıntı: mesajı görüntüle
    Hocam malesef for ilede olmuyor

    	$sorgu	=	mysql_query("SELECT * FROM firma_kaydi");
    	$md5	=	substr(md5(time()),0,7);
    	
    	for($i=1; $i<181; $i++){
    
    		mysql_query("UPDATE firma_kaydi SET firmano = '".$md5."'");
    		
    	}
    yapmama rahmen olmadı gene hepsine aynı rakamı giriyor. sleep(1) yapsam bile her forda 1 saniye bekle desem bile bu şekilde oluyor gerçekten ilginç.
    $md5 = substr(md5(time()),0,7);

    bunu for döngüsünün içine al ve sleep uygula.
  • 03-01-2014, 16:00:16
    #9
    BR9 adlı üyeden alıntı: mesajı görüntüle
    Hocam malesef for ilede olmuyor



    	$sorgu	=	mysql_query("SELECT * FROM firma_kaydi");
    	$md5	=	substr(md5(time()),0,7);
    	
    	for($i=1; $i<181; $i++){
    
    		mysql_query("UPDATE firma_kaydi SET firmano = '".$md5."'");
    		
    	}

    yapmama rahmen olmadı gene hepsine aynı rakamı giriyor. sleep(1) yapsam bile her forda 1 saniye bekle desem bile bu şekilde oluyor gerçekten ilginç.
    mysql_query("UPDATE firma_kaydi SET firmano = '".$md5."'");
    Bu kodu inatla kullanmaktan vazgeçmezsen olmaz zaten. bu kod ile bütün tabloyu değiştirirsin. where ile bir koşul belirtmen gerekiyor. benim yukarda verdiğim kodu kendine göre uyarlarsan sorunu halledersin.