PDA

View Full Version : جستجو در در مقدار فیلد



pary_daryayi
چهارشنبه 21 خرداد 1393, 07:05 صبح
من یک فیلد در جدول دارم که داده به این شکل در اون ذخیره میشه (نوع varchar ) :

1-2-3
یا
1-2
یا
2-3
یا
1-3

سه چک باکس در فرم دارم که value اونها به ترتیب 1 و 2 و 3 هست .

میخوام کاربر هر کدوم از چک باکس ها رو که انتخاب کرد ، اول value اونها رو دریافت کنه و بعد چک کنه ببینه در کدوم رکورد وجود داره .

بعنوان مثال اگه کاربر چک باکس سوم (value=3 ) رو انتخاب کرد ، باید این سه رکورد با این مقادیر رو بیاره :

1-2-3
2-3
1-3

یا اگه کاربر چک باکس دوم و سوم ( value=2, value=3 ) رو انتخاب کرد ، باید این رکورد ها با این مقادیر رو بیاره :
1-2-3
2-3

و اگه هر سه رو انتخاب کرد ، رکوردهایی با این مقادیر رو بیاره :
1-2-3

مثل strstr که در رشته جستجو میکنه ، من میخوام تو فیلد این جستجو اتفاق بیفته ؛ اما نمیدونم کوئری رو به چه شکل بنویسم ؟

pary_daryayi
چهارشنبه 21 خرداد 1393, 07:26 صبح
جواب رو پیدا کردم ، فکر میکنم این کد خوب باشه ، اگه به نظرتون بهینه تر هم میشه نوشت ممنون میشم بگید .



<input type="checkbox" name="product[]" value="1"/>
<input type="checkbox" name="product[]" value="2"/>
<input type="checkbox" name="product[]" value="3" />






$query = "SELECT * FROM m_product WHERE ('1'='1'";
foreach($_POST['product'] as $value) {
$query .= " AND `product` like '%$value%' ";
}
$query .= ');';

$res=mysql_query($query) or die('no qry');
while($row=mysql_fetch_array($res))
{
echo $row['product'],'<br/>';
}