• 28-04-2009, 12:00:26
    #1
    $dizi=array("h","l","k","u","g");

    yukarıdaki dizi degiskenini update komutu ile nasıl sql'e eklerim.

    ornek:
    $dizi=array("h","l","k","u","g");
    $duzenle=mysql_query("update tablo set `gruplar`='$dizi' where id='2'");

    şeklinde birşey ama yukarıdaki kod çalışmıyor çalışır hale nasıl getiririm?

    not: foreach ile açıpda yapabilirim ama daha kısa yolu var sanırım bunu.
  • 28-04-2009, 12:06:03
    #2
    edit. not u okumamışım foreach la yaptım
  • 28-04-2009, 12:14:30
    #3
    Üyeliği durduruldu
    Bkz : Where IN()
  • 28-04-2009, 12:19:43
    #4
    Link verirmisin, benim buldugum select ile yapılan birşey?
  • 28-04-2009, 12:28:54
    #5
    Üyeliği durduruldu
    update te farklı id leri update etmek istiyorsunuz düşündüügm kadari ile. böyle ise ayrı sqller yazmalısınız.

    diziyi veritabanında saklamak istiyorsanız. serialize unserialize işinizi görebilir. yada implode explode
  • 28-04-2009, 12:38:46
    #6
    Üyeliği durduruldu
    SQL Sorgundan Bişi Anlamadım.
    Birden Fazla UPDATE mi yapmak İstiyorsun Yoksa Tek UPDATE mi?
    SQL Sorgunundan Almak İstediğin Çıktıyı Yazarmısın.

    Şuan Örnek verdiğin sorgunun kaştı bu. İstediğinde bumu?
    Alıntı
    $duzenle=mysql_query("update tablo set `gruplar`='h,l,k,u,g' where id='2'");
  • 28-04-2009, 12:40:36
    #7
    evet istedigim sorgu o, nasıl o hale getirebilirim?

    biraz daha aydınlatıcı ornek verecek olursam.

    $begendigim_araba_modelleri=array("honda","toyota" ,"ferarri");

    $update=mysql_query("update PROFILLER set `begendiklerim`='$begendigim_araba_modelleri' where uye_id='5'

    tek bir sorguda array'ın içindekilerini eklemek istiyorum
  • 28-04-2009, 12:45:33
    #8
    Üyeliği durduruldu
    birincisi implode explode yapabilirsiniz;
    arada datada olmayacak bir ayıraç kullanarak;
    ayıracımızın @ işareti olduğunu düşünelim

    $update=mysql_query("update PROFILLER set `begendiklerim`='".mysql_real_escape_string(implode("@",$begendigim_araba_modelleri))."' where uye_id='5');
    bunu okurken ise explode yapabilirsiniz

    $begendigim_araba_modelleri = explode('@',$row["begendiklerim"]);
    aynı yapıyı serialize ve unserialize ile de kullanabilirsiniz
  • 28-04-2009, 12:45:55
    #9
    Bunun farklı bir çözümüde yazayım.

    $begendigim_araba_modelleri=array("honda","toyota" ,"ferarri");
    foreach ($begendigim_araba_modelleri as $veriler );
    $begendiklerim =. "$veriler,";
    }
    $update=mysql_query("update PROFILLER set `begendiklerim`='$begendiklerim' where uye_id='5'
    bu şekildede olur ama daha kısa bir yolu olmalı.