v2.5.2
Giriş yap

in_array Şeçili olanları üstte gösterme bi çeşit order by

qplot
511 defa görüntülendi

Beynim sulandı tıkandım

Yapmak istediğim

seçili olanlar üstte seçilmeyenler altta cıkması



$aktiv=explode(',', $row_alan['a_aktivite']);
	
	function ozellikler($ust = 0){
    global $db;
    global $aktiv;
    $query = $db->prepare("SELECT * FROM ozellik WHERE o_ust =? AND o_goster=1 ORDER BY o_bas ASC");
    $query->execute([$ust]);
 
    if($query->rowCount() > 0){
	
        while($row = $query->FETCH(PDO::FETCH_ASSOC)){
        
			if($row['o_ust']==0){
				
		   echo '<h3 class="message-header is-3 mb-0">'.$row['o_bas'].'</h3>';
				echo '<hr class="mt-0">';
			echo '
<div class="columns is-multiline is-variable bd-klmn-columns is-0">';	
			}else{?>
				
<div class="column <?php echo in_array($row['o_id'], $aktiv) ? 'has-text-dark' : 'has-text-grey-lighter' ?>">
<span><i class="fa-2x <?php echo $row['o_icon']; ?>"></i></span>
<span <?php echo in_array($row['o_id'], $aktiv) ? 'class="has-text-weight-bold"' : '' ?>><?php echo $row['o_bas']; ?></span></div>
<?php }
 ozellikler($row['o_id']);
 }
		echo '</div>';
    }
}





Cevap yaz
Cevaplar (2)
qplot
1295 gün önce

FIND_IN_SET() kullanıp her seferınde ayrıca sql kontrolu yapmak ıstemıyorum ama en son cagre onu yapıcam

makifgokce
1296 gün önce

https://www.youtube.com/watch?v=MQoXH9yNUyo&ab_channel=PROTOTURK
$aktiv=explode(',', $row_alan['a_aktivite']); burada yaptığın işlemi FIND_IN_SET() ile yaparak olabilir gibi geliyor.
veritabanını paylaşabilirsen daha iyi yardımcı olabiliriz.