作者camille168 (凯凯)
看板PHP
标题Re: [请益] 多条件查询
时间Fri Jan 25 11:27:47 2008
: 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