Re: [請益] 多條件查詢

看板PHP作者 (凱凱)時間18年前 (2008/01/25 11:27), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串3/4 (看更多)
: if (isset($_GET['$field'])) { : $colname_RecID = (get_magic_quotes_gpc()) ? $_GET['$field'] : addslashes($_GET['$field']); : } : 打開檔案一看就看到你的錯誤了... : $_GET['field'] ○ : $_GET['$field'] ╳ : $query_RecID = sprintf : ("SELECT * FROM `01_id` : WHERE '%s' like '%s' ORDER BY i_date DESC", $field,$colname_RecID); : 另外.... : 一般用SQL用 like指令 : 我習慣是 tablefield放前,查的字放後 : 比如 : $name='羽山'; : $sql="select id from data where name like '%".$name."%' "; : 也就是說.. name like '%羽山%' : 即可以查 名字中 有 羽山 二字的所有人名 : 比如 肥羽山秋人 或 胖羽山 : 當然你用sprintf也不是不行,只是你的%s會被你鍵入的field取代 : 變成應有的%就消失了 : 所以你應該要... : $query_RecID = sprintf : ("SELECT * FROM `01_id` : WHERE '%s' like '%%s%' ORDER BY i_date DESC", $field,$colname_RecID); : ^ ^ : 大概就是如此... 我改了 $query_RecID = sprintf ("SELECT * FROM `01_id` WHERE '%s' like '%s' ORDER BY i_date DESC", $field,$colname_RecID); 這樣 然後打了 你說的印出query_recid 查詢工號(id) 他印出select * from '01_id' where 'id' like 'id' order by i_date DESC 查型號(model)的話 他會印出select * from '01_id' where 'model' like 'model' order by i_date DESC -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 211.75.220.244
文章代碼(AID): #17cLSqfK (PHP)
討論串 (同標題文章)
本文引述了以下文章的的內容:
以下文章回應了本文
完整討論串 (本文為第 3 之 4 篇):
文章代碼(AID): #17cLSqfK (PHP)