前台数据往后台传值,往往是新手最头痛的,最近在学习thinkPHP的时候,也遇到了这种问题,总结一下,往不足之处请大家指教。

一、前台界面代码,往后台传值有两种方式,一种是get,另一种是post,新手入门,不管什么方式吧,往后台传值成功就可以了。

首先,写一个from表单,

<form action="{:U(Recom/goodsprice)}" method="post">

      <a href="{:U('Recom/goodsprice',array('price'=>'700'))}">价格大于700</a>//在本案例中就已超链接的方式传值做介绍吧

</form>

这个价格就往后台传过去了,传过去后,也要接受要传的值,看步骤二,

二、后台的控制层的代码如下:  

public function goodsprice(){
           $price = I('price');//这就可以获取前台传的price这个值了
    print_r("price: ".$price." ");//检验一下传值是否成功,需要运行后开前台的源代码是否有这个值
    $model = D('Goods');//选择数据库中的表了,打个比方吧,就叫goods表吧
    $res = $model->selectPrice($price);//关键时刻来了,调用model层的selectPrice函数,顺道把$price这个参数带过去

    $this->assign('res',$res["date"]);//获取数据,命名为res
    $this->assign('page',$res["page"]);//thinkPHP中自带的一种分页方式,很简单,但是需要在model层中进行配置,讲解在下面。

    $this->display();//这个是显示界面的
    }

三、model层的代码如下:

  public function selectPrice($price){
    $this->db(1,"DB_CONFIG1")->db(1);//选择数据库

    $map ['price'] = array('gt',$price); //定义查询条件

    $count = $this->db(1,"DB_CONFIG1")->where($map)->count();//统计条数
    $page = new \Think\Page($count,10);//分页处理
    $show = $page->show();
    $limit = $page->show();
    $limit = $page->firstRow.",".$page->listRows;

    $goodsprice = $this->db(1,"DB_CONFIG1")->limit($limit)->where($map)->select();//sql语句
    print_r($this->getLastSql());//调试专用,输出最后一条sql语句
    $res["date"] = $goodsprice;
    $res["page"] = $show;

    return $res;
  }

具体的代码和步骤就是这么简单,对你有没有帮助啊?

PHP后台传值的更多相关文章

  1. springmvc之前后台传值

    一.向后台传值 1.项目结构 2.jar包 3.spring-config.xml <?xml version="1.0" encoding="UTF-8" ...

  2. Spring mvc前台后台传值

    前台向后台传值: ①同名参数传递:form表单中提交input,Controller方法入参中,直接以同名参数获取 ②不同名参数传递:from表单提交input,Controller方法入参中需要使用 ...

  3. ASP.NET MVC 富文本Ueditor编辑 后台传值前端乱码解决方案

    只是将当前内容String当成Html插入,我想是跟数据类型转换差不多 //把内容赋值给ueditor var ue = UE.getEditor('editor');//实例化 ue.ready(f ...

  4. 元素设置disabled属性后便无法向后台传值

    元素设置disabled属性后便无法向后台传值

  5. SpringMVC:前台jsp页面和后台传值

    前台jsp页面和后台传值的几种方式: 不用SpringMVC自带的标签 前台---->后台,通过表单传递数据(): 1.jsp页面代码如下,  modelattribute 有没有都行 < ...

  6. disabled属性对form表单向后台传值的影响

    在form表单里,如果对input加入disabled="disabled"或disabled="true"等属性,form表单提交的时候,就不会传值到后台. ...

  7. select & input的disabled属性及其向后台传值问题

    1.select & input disabled属性 select & input 均具有disabled属性,设置该属性可禁止修改select / input 的文本内容,同时也会 ...

  8. jsp页面向后台传值出现乱码的问题

    1.采用decode()方法 页面: Url: '<%=path%>/sfyh/infodata.jsp?type='+encodeURI(ss) , 后台: String result  ...

  9. ajax向后台传值

    function save_person(){ //保存个人信息编辑 var data = getFormJson(".row"); //获取表单数据 $.post(clerk_u ...

随机推荐

  1. Hibernate中的事务隔离

    在我们的项目中,老发现程序报告sesssion is closed或者因数据已经被其他事务修改而导致当前事务无法提交,由于系统的运行用户最多也就几十个人,所以考虑使用严格的事务隔离来防止这种类型的问题 ...

  2. dns智能解析对网站排名的影响

    网站排名是所有建站者都关系的问题,如何提升网站排名有很多因素,网站是否健康也与网站排名有关,下面智儒科技网站建设为你研究下如何判断自己的网站是否健康. 一般情况下,网站的排名在优化的基础上,怎么也上不 ...

  3. Apache Struts 多个开放重定向漏洞(CVE-2013-2248)

    漏洞版本: Struts < 2.3.15.1 漏洞描述: BUGTRAQ ID: 61196 CVE(CAN) ID: CVE-2013-2248 Struts2 是第二代基于Model-Vi ...

  4. socket(tcp)互发信息

    一:有图有真相,很简单 a, b, Thread 构造函数(ParameterizedThreadStart)初始化 Thread 类的新实例,指定允许对象在线程启动时传递给线程的委托. 参数star ...

  5. VirtualBox扩展Ubuntu磁盘空间

    有时候我们在使用virtualBox虚拟机时,创建虚拟机时并没有考虑到所占用硬盘大小,后来可能磁盘空间不够用了. 以下方法可以帮你扩展虚拟机的存储空间(以下Ubuntu为例). 1. 在宿主机器进入V ...

  6. java mysql模板

    Java mysql的模版,很优雅.同时也兼顾了性能PreparedStatement和安全性(防SQL注入)两方面.对于比较简单的数据库操作基本满足要求. package dao; import j ...

  7. flume-ng 使用spool source 传输文件到hdfs

    Flume 1.4.0 User Guide 地址:http://archive.cloudera.com/cdh4/cdh/4/flume-ng-1.4.0-cdh4.6.0/FlumeUserGu ...

  8. php中应该哪怕被打断腿都要记得的几个函数

    php中应该哪怕被打断腿都要记得的几个函数: substr() 截取字符串 : explode() 使用一个字符串分割另一个字符串 : implode() 将数组用预定的字符连接成字符串: 下面有一个 ...

  9. pycharm-4.5.3 汉化教程(附汉化包)

    汉化包地址  http://pan.baidu.com/s/1coLZau 密码: muu5 1.先找到Pycharm文件夹中的lib文件夹,将resources_en.jar复制到桌面并改名为res ...

  10. MongoDB 逻辑与操作

    看下面两个例子 rs1:PRIMARY> db.display.find({$and: [{$where: '(1386813645 - this.last_active_time > 3 ...