急 急 急,在index.dwt页面,自定义了一个搜索功能,search.php也接值,但搜索不生效

2016-07-07 14:55 来源:www.chinab4c.com 作者:ecshop专家



在index.dwt页面,自定义了一个搜索功能,search.php也接值,但搜索不生效

这是搜索效果图
这是index.dwt页面代码:

这是search.php页面接值代码
这样搜索功能搜索到的是所有商品,真不知道为什么了,有好心的高手指导一下,感激不尽

回答:
关键是你的SQL要写对。




SQL??哪一段SQL,是search,php里面的SQL吗?您知道是哪一段控制吗?




什么意思?怎么实现 ?

你试试看弄几个英文的选项,再只选英文的,试试能不能行。怀疑是你中文的关键词没处理成url!




我在index.dwt如果直接用action="search.php?keywords=洁面 护肤",就能搜索出来

有没有高手,帮我看看呀

不知道你代码是写到哪个位置的?
search.php 如果发现没有encode参数 会先把所有参数serialize序列化,然后再base64_encode加密,然后再跳转 做统一处理。你的需求是肯定可以实现的,代码位置有误。




我写在开头,给我的感觉是我取的值就没生效,直接跳到全部搜索上去了,写在哪是对的?

先在搜索结果上面打印看啊看
print_r($_REQUEST) 有没有 type 以及 RadioGroup1
下面的搜索结果里面 需要对 type 以及 RadioGroup1 进行处理



对函数做下调式,看看哪个关键的函数的值没有取到,问题就出在哪!

用这个语句来调示你的函数,die(print_r(/*你需要的函数*/));
php直接用print_r有可能是不输出显示的!




type 以及 RadioGroup1都是有的,现在接值是完全可以接到,可就是搜索不生效




我不太懂PHP,怎么调?

我看你对这个搜索流程完全没搞清楚,自己也不愿意去看后面的代码
下面的搜索结果里面 需要对 type 以及 RadioGroup1 进行处理
  1. $_REQUEST['keywords']= !empty($_REQUEST['keywords'])? htmlspecialchars(trim($_REQUEST['keywords'])): '';
  2. $_REQUEST['brand']= !empty($_REQUEST['brand'])? intval($_REQUEST['brand']): 0;
  3. $_REQUEST['category']= !empty($_REQUEST['category'])? intval($_REQUEST['category']): 0;
  4. $_REQUEST['min_price']= !empty($_REQUEST['min_price'])? intval($_REQUEST['min_price']): 0;
  5. $_REQUEST['max_price']= !empty($_REQUEST['max_price'])? intval($_REQUEST['max_price']): 0;
  6. $_REQUEST['goods_type'] = !empty($_REQUEST['goods_type']) ? intval($_REQUEST['goods_type']) : 0;
  7. $_REQUEST['sc_ds']= !empty($_REQUEST['sc_ds']) ? intval($_REQUEST['sc_ds']) : 0;
  8. $_REQUEST['outstock']= !empty($_REQUEST['outstock']) ? 1 : 0;
复制代码

你的 type 以及 RdioGroup1 根本不在原来程序的搜索参数里面