• 03-11-2013, 23:33:38
    #1
    Merhabalar

    Hazırladığım bir sistemde bir noktada takıldım ve aramızda yardımcı olabilecek arkadaşların yardımlarını beklemekteyim.

    Sıkıntım şu ;
    Bir upload sistemim var step mantığında birinci adımda gereken verileri girip ikinci adıma atıyor ve burda json ile çoklu tekli vs upload yapıp veritabanına projeler tablosuna kaydediyorum.

    Şimdi veritabanında projeler ve öğrenciler tablom var. Projeler tablosunda öğrenci_id ve okul_no sütunlarım var.

    Dağıt bölümü oluşturdum ve bu bölümde bir butonum var ona basınca (diyelim ki öğrenciler tablosunda 3 kayıt var projeler tablomda 5 projem var) öğrenci tablosundan ilk veriden itibaren alıp projeler tablosunda sondan başa öğrencilere tek tek bir proje vermek suretiyle öğrenci_id ve okul_no tablolarına update ederek verileri girecek.

    Siz olsaydınız hangi yolu seçerdiniz. Zira 400 den fazla öğrenci ve proje olacak sıkıntısız bir dağıtma sistemi yapmam gerek
  • 03-11-2013, 23:48:11
    #2
    Merhaba,

    Konuyu okuyunca aklıma şu geldi, butona bastıktan sonra projeler ve öğrenciler tablosundan ayrı bir tablo da daha oluşturup bir öğrenci bir proje çekip yeni tabloya kaydederdim daha kolay olur gibime geldi.
  • 03-11-2013, 23:54:00
    #3
    hyPerdarKness adlı üyeden alıntı: mesajı görüntüle
    Merhaba,

    Konuyu okuyunca aklıma şu geldi, butona bastıktan sonra projeler ve öğrenciler tablosundan ayrı bir tablo da daha oluşturup bir öğrenci bir proje çekip yeni tabloya kaydederdim daha kolay olur gibime geldi.
    okul sistemi olunca bana fazla müdahale hakkı tanınmıyor hocam. Birçok alternatif denedim olmadı. 1500 öğrenci kayıt vs var sistemi oturtmuşlar sonradan eklemede istediğimiz gibi çalıştırtmıyorlar. cevabınız için teşekkürler
  • 03-11-2013, 23:58:23
    #4
    ByAkman adlı üyeden alıntı: mesajı görüntüle
    okul sistemi olunca bana fazla müdahale hakkı tanınmıyor hocam. Birçok alternatif denedim olmadı. 1500 öğrenci kayıt vs var sistemi oturtmuşlar sonradan eklemede istediğimiz gibi çalıştırtmıyorlar. cevabınız için teşekkürler
    Anlıyorum, benim en çok sinir olduklarımdan istediğin gibi yapamaz deveye hendek atlatmaya çalışırsın o zaman uzar da uzar... Allah kolaylık versin hocam

    Nexus 4 cihazımdan Tapatalk kullanılarak gönderildi
  • 04-11-2013, 12:21:08
    #5
    hyPerdarKness adlı üyeden alıntı: mesajı görüntüle
    Anlıyorum, benim en çok sinir olduklarımdan istediğin gibi yapamaz deveye hendek atlatmaya çalışırsın o zaman uzar da uzar... Allah kolaylık versin hocam

    Nexus 4 cihazımdan Tapatalk kullanılarak gönderildi
    fikri olan arkadaşlar yardımcı olursa sevinirim
  • 11-11-2013, 11:04:12
    #6
    yardımlar bekleniyor...
  • 11-11-2013, 14:54:34
    #7
    Adaletli bir dağıtım için rastgele (random) kullanabilirsiniz.

    $ogrenciler = mysql_query("SELECT * FROM `ogrenciler` ORDER BY `ogrenci_id` ASC");

    while($ogrenci = mysql_fetch_array($ogrenciler))
    {
    $rastgeleproje = mysql_query("SELECT * FROM `projeler` ORDER BY RND() LIMIT 1");
    mysql_query("UPDATE `projeler` SET `ogrenci_id` = '".$ogrenci["ogrenci_id"]."' WHERE `proje_id` = '".$rastgeleproje["proje_id"]."'");
    }

    Doğru anladıysam böyle bir çözüm getirilebilir.
  • 19-11-2013, 23:58:45
    #8
    Yok hocam çözüm getirmedi bu yol. Şimdi projeleri yükleyip tabloya yazıyorum dağıtma sayfasında türü seçip dağıt deyince öğrencileri baştan sona alıp projelerde sonda başa öğrenci id ve numarasını güncelleyecek


    Sent from my NOKIA 3310 using Tapatalk
  • 20-11-2013, 02:37:15
    #9
    Kimlik doğrulama veya yönetimden onay bekliyor.
    ByAkman adlı üyeden alıntı: mesajı görüntüle
    Yok hocam çözüm getirmedi bu yol. Şimdi projeleri yükleyip tabloya yazıyorum dağıtma sayfasında türü seçip dağıt deyince öğrencileri baştan sona alıp projelerde sonda başa öğrenci id ve numarasını güncelleyecek


    Sent from my NOKIA 3310 using Tapatalk
    Arkadaşım aslında zor bir şey değil. yerinde olsam bir temp tablo oluştururum, proje id ve öğrenci idleri alanları olan. Proje idini sondan başa alır eklerim, daha sonra öğrenci idini baştan sona alır eklerim. Daha sonra proje dosyasında alanları eşitleyip güncellerim.

    Yok illa php ile yapacam dersen yine aynı şeyi farklı yoldan yapacaksın. Proje tablosunda yapıyorsan güncellemeyi, önce öğrenci tablosunda idleri baştan sona alacaksın. Misal:

    $sor = mysql_query('select ogrenci_id from ogrenciler order by ogrenci_id asc');
    while($sonuc = mysql_fetch_assoc($sor)) $ogrenciler[] = $sonuc['ogrenci_id'];
    Sonrada projeler tablonun idlerini tersten al ve alanı güncelle:
    $sor = mysql_query('select proje_id from projeler order by proje_id desc');
    $i = 0;
    $limit = count($ogrenciler);
    while($sonuc = mysql_fetch_assoc($sor)){
     $update =  'update projeler set ogrenci_id =" '.$ogrenciler[$i].'"';
     mysql_query($update);
     $i++;
     if($i== $limit) $i=0;//gerekiyorsa öğrenci döngüsünü başa al 
    }