|
|
|
สอบถาม เกี่ยวกับ relate post โดย tag ครับ คือทำกระทู้ที่เกี่ยวข้อง แล้วเกิดปัญหาครับ |
|
|
|
|
|
|
|
คือผมทำ relate post คือจะทำโพสต์ที่ใกล้เคียงกัน มาไว้ด้านล่างของกระทู้ครับ แล้วที่นี้ปัญหามันเกิดขึ้น ดังนี้
คือ สมมุติ
$tag = (อาหาร, อาหารรักษาโรค, อาหารมีประโยชน์);
จากสคิปที่ผมทำ มันจะวน 3 รอบ คือ รอบแรก คำว่า อาหาร รอบสอง อาหารรักษาโรค รอบสาม อาหารมีประโยชน์
แล้วทีนี้ แต่ระรอบ มันจะรัน เอา id ที่ซ้ำกันมา เช่น รอบแรก id = 1,2,3,4,5, รอบสอง id= 1,3,5,7 รอบสาม id=4,5,7,9,10
ปัญหา ก็คือ อยากให้ มันรันเฉพาะ ไอดีที่ไม่ซ้ำกัน หนะครับ
จะสามารถแก้โค้ดนี้ได้ยังไง หรือ จะเขียนโค้ด ยังไงครับ ผมมือใหม่ มากๆครับ
script นะครับ
Code (PHP)
$tag = (อาหาร, อาหารรักษาโรค, อาหารมีประโยชน์);
<? if($tag!=""){
$a=explode(",",$tag);
while ( $tag=each($a) ) {
$sql = "select * from webboard_data where tag like '%$tag[1]%' order by id desc limit 5"; //คำสั่ง Sql ที่ใช้
$rs=mysql_query($sql);
$cols =1; //
$c = $cols;
echo"<table border='0' cellspacing='0' cellpadding='0'>";
while ($result=mysql_fetch_array($rs)){
$c --;
$r=$d[type_web_id];
$Category = $result[Category];
$issub = mb_substr($result[Note], 0, 1000,'UTF-8');
echo"<tr><td valign='top'><br /><a href='show.php?id=$result[id]' target='_blank' alt'$result[Question]'>$result[Question]</a>";
echo"<hr size='1' width='100%' /></td>";
if($c == 0) {
$c = $cols;
echo" </tr>";
} }
echo"</table>";
}
}
?>
ช่วยหน่อยนะครับ ขอบคุณครับ
Tag : PHP, MySQL
|
|
|
|
|
|
Date :
2011-07-13 14:50:53 |
By :
อะติเมท |
View :
854 |
Reply :
6 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ประกาศตัวแปรแบบนี้ $tag = (อาหาร, อาหารรักษาโรค, อาหารมีประโยชน์); มันใช้ได้แน่เหรอครับ
ผมว่าน่าจะเป็น $tag = "อาหาร","อาหารรักษาโรค","อาหารมีประโยชน์"; แบบนี้
ไม่ก็ $tag = array("อาหาร", "อาหารรักษาโรค", "อาหารมีประโยชน์"); มากกว่านะครับ
|
|
|
|
|
Date :
2011-07-13 15:09:55 |
By :
ppanchai |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
อ๋อ ผมดึงมาจาก mysql ครับ ได้ครับ แต่ผมเขียนในนี้ผิดไป แต่คงประมาณ นี้ครับเหมือนคุณ ต้อง กรุณว่าหละครับ
$tag = "อาหาร","อาหารรักษาโรค","อาหารมีประโยชน์";
|
|
|
|
|
Date :
2011-07-13 15:20:40 |
By :
อะติเมท |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ดันๆ ยังไม่ได้เลยครับ มีวิธี ทำให้ได้มั้ยครับ กรณีนี้
หรือว่าผม ต้องหาวิธีอื่นๆเอา
|
|
|
|
|
Date :
2011-07-13 16:19:26 |
By :
อะติเมท |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ดันๆ มีครัย มีวิธี แนะนำมั่งมั้ยครับ
หรือต้องหาวิธีใหม่
ช่วยบอกหน่อยครับ
|
|
|
|
|
Date :
2011-07-13 21:14:45 |
By :
อะติเมท |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
แสดงว่าไม่มีวิธี ใช่มั้ยคคับ
|
|
|
|
|
Date :
2011-07-15 00:55:59 |
By :
อะติเมท |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เก็บไว้ใน array
Code (PHP)
$_find_tags = array("a", "b", "c");
แล้ิวจะหา tags ดังกล่าวนี้
Code (PHP)
$sql = "select * from webboard_data where tag in ('" . implode("', '", $_find_tags) . "') order by id desc";
คิวรี่ปกติแล้วจะได้ข้อมูลที่ตรงกับ tag พวกนี้
|
|
|
|
|
Date :
2011-07-15 12:31:10 |
By :
PlaKriM |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 01
|