• 22-12-2012, 00:28:34
    #1
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Merhaba arkadaşlar,

    Elimde şöyle bir kod var ;

    if ($row_twtwar34['value'] == "Islam") { $row_twtwar34['name'] = "<a style=\"color:#3C0\">".$row_twtwar34['name']."</a>" ; }
    if ($row_twtwar34['value'] == "Katolik Hristiyan") { $row_twtwar34['name'] = "<a style=\"color:#C00\">".$row_twtwar34['name']."</a>" ; }
    if ($row_twtwar34['value'] == "Ortodoks Hristiyan") { $row_twtwar34['name'] = "<a style=\"color:#909\">".$row_twtwar34['name']."</a>" ; }
    if ($row_twtwar34['value'] == "Pagan") { $row_twtwar34['name'] = "<a style=\"color:#09C\">".$row_twtwar34['name']."</a>" ; }
    if ($row_twtwar34['value'] == "Heretic") { $row_twtwar34['name'] = "<a style=\"color:#F60\">".$row_twtwar34['name']."</a>" ; }
    Kodlarda gördüğünüz gibi, örneğin VALUE si Islam olan değişkenin rengi #3c0 oluyor
    VALUE si Katolik Hristiyan olanın ise değişken rengi #c00 oluyor. Bu kodlar sorunsuz çalışıyor.

    Benim yapmak istediğim şu. $row_twtwar34 gibi daha 120 ye kadar değişkenim var.
    $row_twtwar1 den başlıyor $row_twtwar120 ye kadar sırayla gidiyor. yukarıdaki kodları 120 kere çoğaltmadan, basit yoldan yukarıdaki şartlandırmayı tüm değişkenlere nasıl uygularım?
  • 22-12-2012, 00:45:57
    #2
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Erlik adlı üyeden alıntı: mesajı görüntüle
    Merhaba arkadaşlar,

    Elimde şöyle bir kod var ;

    if ($row_twtwar34['value'] == "Islam") { $row_twtwar34['name'] = "<a style=\"color:#3C0\">".$row_twtwar34['name']."</a>" ; }
    if ($row_twtwar34['value'] == "Katolik Hristiyan") { $row_twtwar34['name'] = "<a style=\"color:#C00\">".$row_twtwar34['name']."</a>" ; }
    if ($row_twtwar34['value'] == "Ortodoks Hristiyan") { $row_twtwar34['name'] = "<a style=\"color:#909\">".$row_twtwar34['name']."</a>" ; }
    if ($row_twtwar34['value'] == "Pagan") { $row_twtwar34['name'] = "<a style=\"color:#09C\">".$row_twtwar34['name']."</a>" ; }
    if ($row_twtwar34['value'] == "Heretic") { $row_twtwar34['name'] = "<a style=\"color:#F60\">".$row_twtwar34['name']."</a>" ; }
    Kodlarda gördüğünüz gibi, örneğin VALUE si Islam olan değişkenin rengi #3c0 oluyor
    VALUE si Katolik Hristiyan olanın ise değişken rengi #c00 oluyor. Bu kodlar sorunsuz çalışıyor.

    Benim yapmak istediğim şu. $row_twtwar34 gibi daha 120 ye kadar değişkenim var.
    $row_twtwar1 den başlıyor $row_twtwar120 ye kadar sırayla gidiyor. yukarıdaki kodları 120 kere çoğaltmadan, basit yoldan yukarıdaki şartlandırmayı tüm değişkenlere nasıl uygularım?
    Arkadaşım niye böyle saçma bir şey yaptın ki. Yanlış anlama da saçma olmuş Bunları veritabanından çekiyorsun madem, tablona bir alan daha ekle color diye, oraya renk değerini yaz. Gösterirken de:

    while($row = mysql_fetch_assoc($sorgun)){
    echo '<a style="color:#'.$row['color'].'">'.$row['name'].'</a>' ;
    }
    şeklinde göster
  • 22-12-2012, 01:01:25
    #3
    ya şöyle bişey var ama, ben smf forum kullanıyorum.üyelerin profil ayarlarında 4 seçenekli radio butonu var. Adam İslam'ı seçtiğinde smf forumu otomatik olarak smf_themes tablosunda bir satır oluşturuyor. örn:

    id_member | variable | value
    -----------------------------------
    1 | cust_twtmed | İslam


    birbaşka üye Katolik Hristiyan seçtiğinde bir satır daha ekliyor.

    id_member | variable | value
    -----------------------------------
    2 | cust_twtmed | Katolik Hristiyan


    smf forum bu şekilde yapıyor.dediğin sistemi buna uyarlayabilir miyiz?
  • 22-12-2012, 01:43:19
    #4
    Arkadaşım radio butonlarının işlendiği sayfada veritabanına eklerken ek yaptırabilirsin. Ya da o karışık olur dersen 2. bir yol olarak şu şekilde yapabilirsin:

    $renkler = array(
    'Islam' => '#3C0',
    'Katolik Hristiyan' => '#3C0',
    'Ortodoks Hristiyan' => '#909',
    'Pagan' => '#09C',
    'Heretic' => '#F60',
    );
    
    while($row = mysql_fetch_assoc($sorgun)){
    echo '<a style="color:'.$renkler[$row_twtwar34['value']].'">'.$row_twtwar34['name'].'</a>';
    }
  • 22-12-2012, 01:47:05
    #5
    function renklendir($value,$name){
    if ($veri == "Islam") { $name = "<a style=\"color:#3C0\">".$name."</a>" ; }
    if ($veri == "Katolik Hristiyan") { $name = "<a style=\"color:#C00\">".$name."</a>" ; }
    if ($veri == "Ortodoks Hristiyan") { $name = "<a style=\"color:#909\">".$name."</a>" ; }
    if ($veri == "Pagan") { $name = "<a style=\"color:#09C\">".$name."</a>" ; }
    if ($veri == "Heretic") { $name = "<a style=\"color:#F60\">".$name."</a>" ; }

    return $name;
    }

    $row_twtwar34['name'] = renklendir($row_twtwar34['value'],$row_twtwar34['name']);
    $row_twtwar35['name'] = renklendir($row_twtwar35['value'],$row_twtwar35['name']);
    $row_twtwar36['name'] = renklendir($row_twtwar36['value'],$row_twtwar36['name']);
    .
    .

    gibi kullanabilirsin. Bunu while döngüsü ile de yapabilirsin.
  • 22-12-2012, 01:58:37
    #6
    for($i=1;$i<=120;$i++){
    if ($row_twtwar34['value'] == "Islam") { ${"row_twtwar$i"}['name'] = "<a style=\"color:#3C0\">".${"row_twtwar$i"}['name']."</a>" ; } 
    if ($row_twtwar34['value'] == "Katolik Hristiyan") { ${"row_twtwar$i"}['name'] = "<a style=\"color:#C00\">".${"row_twtwar$i"}['name']."</a>" ; } 
    if ($row_twtwar34['value'] == "Ortodoks Hristiyan") { ${"row_twtwar$i"}['name'] = "<a style=\"color:#909\">".${"row_twtwar$i"}['name']."</a>" ; } 
    if ($row_twtwar34['value'] == "Pagan") { ${"row_twtwar$i"}['name'] = "<a style=\"color:#09C\">".${"row_twtwar$i"}['name']."</a>" ; } 
    if ($row_twtwar34['value'] == "Heretic") { ${"row_twtwar$i"}['name'] = "<a style=\"color:#F60\">".${"row_twtwar$i"}['name']."</a>" ; } 
    }
  • 22-12-2012, 03:24:19
    #7
    Kimlik doğrulama veya yönetimden onay bekliyor.
    in_array ile dizi içerisine bakıp, renk diye bir değişken oluşturup rengi bu değişkene atayın. işlemlerden sonra bunu kullanın. ek olarak dizi indis numarasını hafızada tutarak, direk istediğiniz diziye ait verileride gösterebilir, kullanabilirsiniz.
  • 22-12-2012, 21:35:50
    #8
    acayip adlı üyeden alıntı: mesajı görüntüle
    Arkadaşım radio butonlarının işlendiği sayfada veritabanına eklerken ek yaptırabilirsin. Ya da o karışık olur dersen 2. bir yol olarak şu şekilde yapabilirsin:

    $renkler = array(
    'Islam' => '#3C0',
    'Katolik Hristiyan' => '#3C0',
    'Ortodoks Hristiyan' => '#909',
    'Pagan' => '#09C',
    'Heretic' => '#F60',
    );
    
    while($row = mysql_fetch_assoc($sorgun)){
    echo '<a style="color:'.$renkler[$row_twtwar34['value']].'">'.$row_twtwar34['name'].'</a>';
    }
    bu kodda bir hata olabilir mi? şu kısımda. çalışmadı çünkü

    color:'.$renkler[$row_twtwar34['value']].'
  • 22-12-2012, 21:37:03
    #9
    Erlik adlı üyeden alıntı: mesajı görüntüle
    bu kodda bir hata olabilir mi? şu kısımda. çalışmadı çünkü

    color:'.$renkler[$row_twtwar34['value']].'
    Arkadaşım hata yok yalnız dikkat et, benim verdiğim de başta tek tırrnak ile başlıyor. Senin orjinalde çift tırnakdı. Yanı tırnaklara dikkat et.