求助 !!! 在CI中如何使用 GET 呢? 请各路高手指点!
我在VIEW 中插入了一个表单,method="get" 但是我用$_GET 来取数据却取不到, 我应怎么做呢,谢谢各位高人指点一二......<?php
class Blog extends Controller {
function Blog()
{
parent::Controller();
function index()
{
$this->load->view('blog');
print$_GET['mytest'];
}
}
view 文件:
form name="form1" method="GET" action="">
<input type="text" name="mytest">
<input type="submit" name="Submit" value="提交">
</form>
错误提示如下:
A PHP Error was encounteredSeverity: Notice
Message: Undefined index: mytest
Filename: controllers/blog.php
Line Number: 16 你这个不能通过 GET 取到吧?用$_REQUEST 试试。 默认情况下CI不是禁止GET的吗?
GET参数可以直接通过method的参数传进来啊。 用$_REQUEST是可以取出来的,但是在执行分页操作的时候 $_REQUERT 就取不到了或者是空的了, 原来我用原生的PHP做的带查询的分页的时候就是用$_GET 可以解决的,因为执行分页的时候$_GET还可以保留原来的查询参数值, 即 如
SELECT * FROM MYTABLEWHERE NAMELIKE'%$_GET['mytest'']%'不管你翻到第几页 $_GET['mytest'] 还是存在的,这样就不至于刚点查询的时候可以得到正确的结果,而点分页的时候得出的结果又是全部的了,而不是所查询结果的第几页了,所以我想在CI中也能用上 $_GET,还请各位高手指点如何在CI中可以用上$_GET CI 和普通的 PHP 程序还是有区别的,所以 GET 就不要用了。
CI 分页也不用 GET。
请使用 URL 分段进行参数传递,或者使用 POST。 呵呵,我就是分了7-8段,结果要用JS来构造最后的URL地址。。这地方看来还可以自己想想怎么改进。。 晕,这么多参数~~~那就得换个方式了,可以考虑考虑程序结构是否合理了,一般很少有应用需要通过URL传这么多参数。一般传很多参数都是POST。 问题基本解决,我现在用session来记录下POST过来的参数,这样在点击翻页的时候就不会出错了,代码如下
$this->CI->load->library('session');
if (isset($_POST['mytest']))
{
$t=$_POST['mytest'];
}else
{
$t=$this->CI->session->userdata('sname') ;
}
$sdata = array(
'sname'=> $t ,
);
$this->CI->session->set_userdata($sdata)
$this->CI->db->like('机构',$this->CI->session->userdata('sname'));
$query = $this->CI->db->get($this->current_table, $per_page, $offset);
//上面代码大家参考一下,用SESSION记录下传过来的查询参数后,点分页后不会显示全部,也是查询的结果了,如果那位高人有更好的方法也请分享一下,大家共同一起学习进步!
页:
[1]