作者mesak (阿米)
看板PHP
标题Re: [请益] CI-CodeIgniter 搜寻字串传递
时间Thu Sep 22 20:14:41 2011
※ 引述《roga (任性)》之铭言:
: 和您分享我的看法
: 我觉得网址这件事情,在不要太夸张的范围内,真的没必要太过去计较长短..
: 如果要短网址,你可以自己实作,或是用现成短网址服务的 API
: 很多时候,网址就是要那麽长才能表示这些资讯,你硬要编码或是缩减
: 最直接可见的缺点就是
: 1. 对 SEO 不利
: - 不用解释了
: 2. 对你自己维护也不利
: - 你没办法直接在网址换参数就改变查询结果
: 3. 对使用者也麻烦
: - 使用者要搜寻资料,也不能从网址更改,必须经由你设计的 input box
: 举个例子来说,你看各个搜寻引擎都是怎麽做的就能了解了
: 他们要应付海量的查询,自然做过很多优化,但为什麽不去缩减网址呢?
: 相信那些家伙一定也不希望网址那麽长吧!但一定有其他考量,才没有
: 去做你想做的"美化网址"的动作,更别提大型网站为了避免 CSRF/XSRF
: 或是为了 click tracking 而加的东西 (那让网址更恐怖)
1. SEO 不需要
不是做搜寻网站,没必要这麽注重 搜寻後的SEO化
2.3. 搜寻UI做出来就是拿来用的,如果参数改一改就可以搜寻,那不是 才会有 你说的
CSRF/XSRF 跨站攻击疑虑
限制住条件搜寻就是为了要用更方便快速的搜寻
网址传递上也方便,有些地方的网址输入是不能超过 255 字串
: : 看有没有别种搜寻方式
: 我觉得在想这一块之前,系统应该还有很多其他重要的功能可以做。
^^^ 我想就针对搜寻的问题讨论,有好的方法提出来实做不是更好吗?
我想就针对 文字传递这部分来做搜寻讨论,因为 CI 预设 关闭了 GET 功能
所以我想应该有人实作过更多不同的搜寻方式
我一开始的做法是 把搜寻的字串变成 变数 放在 搜寻後的网页
用 JAVASCRIPT 针对 分页 的 连结 做事件触发
利用 设定的变数 变成 POST 传递
不过这样的缺点就是不能 以 URL 传递
後来才看到 CI 讨论区的方式 ,不过 参数越多 网址也越长
想知道有没有其他种方式的输出模式,供大家做参考
乐屋网站 我想他就是 把 所有模式变成加密字串
不可预期的资料只有地址一笔而已,所以把他变成第二种变数
例如
mode a = {a:true,b:true}
mode b = {a:true,b:false}
mode c = {a:false,b:true}
mode d = {a:false,b:false}
site.com/search/a/word
c = word
这样参数就可以针对 已有的变数 去判断
需要写的模式 就是 把 MODE 的ID 跟状况一次列出
.......
不是自己写就是找 Class 来套了........既然没有 就自己找吧...
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 112.104.7.4
1F:→ roga:实在是很抱歉没帮上忙 09/22 21:22
2F:→ mesak: 提出来讨论讨论 不用在意 09/22 21:26
3F:→ superpai:你误会CI了 09/22 22:08
4F:→ superpai:CI有 $this->input->get() 给你抓GET资料 09/22 22:08
8F:→ superpai:哇靠.. 预设改成支援GET 8个月以後Github上才改doc 09/23 00:39
9F:→ superpai:而且到现在还没放到官网上 09/23 00:39
10F:→ mesak:喔喔 所以新版的 已经预设支援 GET了!! 09/23 01:11
11F:推 appleboy46:恩 现在可以用 $_GET[] 方式抓取 10/01 09:45