การ search ที่ว่าง่าย มันไม่ได้หมูอย่างที่คิดเลย

สำหรับผู้ที่ เริ่มต้น Programming - PHP มีอะไร แนะนำ หรือข้อสงสัยต้องบอร์ด นี้ คนที่มีความรู้ แบ่งปันคนอื่นบ้างนะ ปัญหาการเขียนโปรแกรม แบบ OOP Session Cookies php network

Moderators: mindphp, ผู้ดูแลกระดาน

nupha45
PHP Jr. Member
PHP Jr. Member
Posts: 13
Joined: 13/08/2008 7:59 pm

การ search ที่ว่าง่าย มันไม่ได้หมูอย่างที่คิดเลย

Post by nupha45 » 25/09/2008 11:23 pm

คือว่า มีฟอร์มให้กรอกชื่อที่ต้องการหาใช้มั้ยคะ
<input type="text" name="search" title="ใส่ชื่อที่ต้องการค้นหาค่ะ">

พอกด submit ก็จะทำงานตานนี้เลย

$search = $_POST;
$strsql = "SELECT * FROM tablename where INSTR(concat(artist,album),'$search') ORDER BY id DESC LIMIT 10";

ทีนี้ถ้าเราใส่ค่าในฟอร์มรับข้อมูลแบบนี้ เบิร์ด แค่ 1 คน
ดังนั้น $search = "เบิร์ด"

แต่ถ้าเราใส่ว่า เบิร์ด บี้ บอย หมายความว่าหาครั้งเดียวถึง 3 คน
ดังนั้น $search = "เบิร์ด บี้ บอย" นี่ไงปัญหา โปรแกรมมองเป็นชื่อเดียวเลย

ทำไงต่อดีล่ะคะ

ที่เราคิดไว้คือ เอา $search มาตัด แยก เป็นคำๆโดยแยกจากช่องว่าง ใช้$find=explode(" ",$search); แต่ผลที่ได้มันจะออกมาในรูปแบบของarray ใช่มั้ยคะ
แล้วอย่างนี้จะเอาไปเขียน where ใน sql ได้ยังไงล่ะ ??

ใครมีวิธีอื่นช่วยอธิบายให้หน่อยสิคะ

sakhao
PHP Newbie
PHP Newbie
Posts: 1
Joined: 26/09/2008 4:46 pm

Re: การ search ที่ว่าง่าย มันไม่ได้หมูอย่างที่คิดเลย

Post by sakhao » 26/09/2008 4:52 pm

เมื่ออยู่ในรูปแบบ Array แล้ว คุณก็ Fetch ข้อมูลใน Array ออกมาเป็นตัว ๆ ซิครับ
จากนั้น ก็มานำเงื่อนไขมาเชื่อมต่อกัน ถ้าต้องการแบบเจาะจง (ต้องมีทุกคำก็ใช้ and) แต่กรณีของคุณก็ใช้ or แทน
แต่ถ้าให้ดีตรง search ควรมีให้เลือกว่า "มีทุกคำ" หรือ "มีบางคำ" ด้วยนะครับก็จะดี

Post Reply
  • Similar Topics
    Replies
    Views
    Last post

Return to “Programming - PHP”

Who is online

Users browsing this forum: Google Adsense [Bot] and 39 guests