PDA

View Full Version : انتخاب چندین موضوع برای یک پست



tem988
شنبه 28 اسفند 1389, 18:57 عصر
سلام
من برای سایتم قسمت ارسال مطلب برای هر پست چندین موضوع انتخاب میکنم که پست توی موضوعاتی که انتخاب شدن توی سایت بیان
برای نمایش پست ها توی موضوعات از لایک Like استفاده کردم ولی چون لایک یک کوئری سنگینی برای mysql هست روی سرور فشار میاره
ممنون میشم اگر از یک روش دیگه برام کدهاشو بدید
کوئری که من نوشتم اینه




mysql_query("SELECT * FROM posts WHERE status='1' AND idcat = '% $catid| %' order by id desc");

54|516|452| //zakhire shodan id cat ha dar Post

maysam.m
شنبه 28 اسفند 1389, 22:16 عصر
سلام

این رو بخون ببین کمکت میکنه؟
http://barnamenevis.org/showthread.php?278751-%D9%85%D8%B4%DA%A9%D9%84-%D8%A8%D8%A7-%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF-%DB%8C%DA%A9-%DA%A9%D9%88%D8%A6%D8%B1%DB%8C

tem988
یک شنبه 29 اسفند 1389, 12:29 عصر
سلام
نه میثم اون روشها هم کار نمیکرد البته گفتم قبلا لایک کار میکنه ولی چون فشار زیادی روی سرور داره استفاده نکردم برای همین دنبال یک روش دیگه هستم
یک روش دیگه رفتم که کدهاشو میزارم ولی فقط پست آخری رو نمایش میده
ممنون میشم مشکلشو بگید


$cat = $_REQUEST['cat'];
$idcat = mysql_query("select * from posts where status='1'");
while($idcata = mysql_fetch_array($idcat)){
$ppcat = $idcata['idcat'];
preg_match("#($ppcat)#",$cat,$sscat);
for($i = 0; $i < count($sscat); $i++){
if($sscat[$i]){
$mm = "id = ".$idcata['id'];
$posts = mysql_query("SELECT * FROM posts WHERE status='1' AND $mm order by id desc ");
}
}
}

maysam.m
یک شنبه 29 اسفند 1389, 12:54 عصر
فکر کنم همانطوری که توی اون پست «امیر حسین» گفت، باید اینطوری کوئری بفرستید:


SELECT * FROM `posts` WHERE status='1' AND FIND_IN_SET('$catid', idcat) > 0;


امتحان کن ببین جواب میده؟

tem988
یک شنبه 29 اسفند 1389, 14:40 عصر
سلام
این برای , فقط کار میکنه من با | جدا کردم برای همین نمیشه بازم ممنون
باید تبدیل کنم که درست بشه

maysam.m
یک شنبه 29 اسفند 1389, 17:04 عصر
سلام
این برای , فقط کار میکنه من با | جدا کردم برای همین نمیشه بازم ممنون
باید تبدیل کنم که درست بشه

tem988 جان
حالا که میخوای ساختار جدولت رو تغییر بدی چرا از جداول واسط استفاده نمی کنی؟ توی اون لینک اولی جناب « امیر حسین » عزیز به خوبی توضیح داده در موردش.
من خودم هنوز وقت نکردم امتحانش کنم ولی قطعا روش اصولی تری ـه!