veritabanında id alanında yazı id lerini dizi seklinde tutuyorum 1,2,3,4 diye
eger yazı idsi bu id alanının icinde varsa bilgileri cekmek istiyorum
mesela veritabanında
etiket => deneme
id => 2,6,76,85
seklinde olsun 76 id li konuya girdigim zaman bu etiketi cekmek istiyorum
veritabanından bunu php komutu olarak nasıl cekebilirim
SELECT
abc,id
FROM deneme
WHERE id LIKE '%$id%'
seklinde kod isime yaramaz cunku 1 nolu id li konu 301 id li konunun etiketini de yazabilir
mysql de dizi olarak tuttugum verinin kontrolu
7
●887
- 20-09-2010, 21:21:59Kimlik doğrulama veya yönetimden onay bekliyor.deleter20 adlı üyeden alıntı: mesajı görüntüle
sorununu tam anlatırsan yardımcı olabilirim - 20-09-2010, 21:22:17Üyeliği durdurulduşunun işini görmesi gerek.
SELECT
abc,id
FROM deneme
WHERE id LIKE '%,$id,%' OR id LIKE '$id,%' OR id LIKE '%,$id' OR id = '$id' - 20-09-2010, 21:28:07or seklinde yaptıgım zaman herhangi biri dogru dondugu zamanda cıkarabilir
dedigim gibi mesela 1 nolu konuda 301,315,420 gibi verilerin bulundugu alandaki veriler de gelebilir
@Twinsens
hocam nasıl anlatayım bilemedim ki
şimdi veritabanında şöyle bi tablom var
id etiket konu_id
1 deneme 1,2,3
2 denden 1,6,7
3 deneme2 6,8,10
şimdi 1 nolu konuya girdigim zaman veritabanında konu_id yazan yerde 1 diye belirtilen kısımlardaki etiketleri alıp sıralamak istiyorum - 20-09-2010, 21:42:30Üyeliği durdurulduo dediğin şekilde tam olarak o sütun da o değer varsa kullanılabilir.deleter20 adlı üyeden alıntı: mesajı görüntüle
senin sistem için aslında en güzeli mantığı değiştirmen. etiketler ile mesajların birbirleriyle ilişkisini ayrı bir tabloda tutman daha mantıklı olur. misal wordpress te etiketlerin tutulduğu bir tablo var, postların tutulduğu bir tablo var. bir de bunların ilişkisinin tutulduğu ayrı bir tablo var. alanları post id - etiket id şeklinde. - 21-09-2010, 02:42:082 tablon olduğu düşündeleter20 adlı üyeden alıntı: mesajı görüntüle
1. tablo yazı tablosu
id -baslık - içerik - etiket.
4 deneme deneme 56,58,200,60 diyelim
etiket tablosuda
id etiket_ismi olsun
56 php
58 sql
200 html
gibi bilgilerimiz olsun
$query = "select * from yazi where id ='4' "; $query = mysql_query($query); $y_row = mysql_fetch_assoc($query); $etiket_array = $y_row['etiket']; $etiket_id_array = explode(',',$etiket_array); foreach ($etiket_id_array as $etiket_id) { $query = mysql_query("select * from etiket where id = '$etiket_id'");//56 58 $etiket_row = mysql_fetch_assoc($query); echo $etiket_row ['etiket_ism'];//php sql } // veya Vice-versaveri tabani yapina gore bu olay degisebilir. genel bir örnek anlattım MYSQL in LEFT JOIN ve IN fonksiyonlarını bir incele derim. kolay gelsin saygılar.