1. 程式人生 > >thinkphp 中實用的三種檢視向控制器傳值得方法

thinkphp 中實用的三種檢視向控制器傳值得方法


首先用得最多的恐怕是url 傳值了吧

1.url傳值

 

 <volist name="news" id="news">
        <div class="newbox">  <!-- 另一種寫法 {:U('News/index?newsid'.$news['Article_ID'])} -->
            <a href="{:U('News/index',array('newsid'=>$news['Article_ID']))}">
       </a>
        </div>
     
    </volist>


2.<form>表單傳值

只要把input放進form中點選div或者按鈕把form提交即可

 <form action="{:U('Product/shousuo')}"  id="forms">
                  <div class="header_input">
                    <input class="soso_input" type="text"  name="keyword"/>
                    <div onclick="shousuo()">
                      <img class="header_soso"  src="__PUBLIC__/Home/pc/img/soso.jpg" alt="" />
                    </div>
                  </div>
                </form>
提交事件
function shousuo(){
    $('#forms').submit();

  }

3.ajax傳值
var msg_sender = $(".mail_sender").val();
var msg_text = $(".mail_text").val();
var msg_title = $(".mail_title").val();
var msg_code = $('.mail_code').val();
var url = '{:U('About/mail_ajax')}';
			
			$.post(url,{msg_sender:msg_sender,msg_text:msg_text,msg_title:msg_title,msg_code:msg_code,},function(data){
				console.log(data);
				if(data == 1){
					if (lang == 1) 
						{alert("registration success")
						}else{
							alert("傳送成功");
						};
					

				};
 這是ajax的簡寫.post是傳輸型別,url是你要傳到哪裡,{}中的是你要傳輸的值,a:a的格式,data是ajax返回的資料都存在data這裡可以自己命名,sb。都可以你喜歡。

說完傳值還有個問題是

控制器如何接收呢

Thinkphp給了我們一個I方法,這不是L是I,

上的3種方法都可以用I獲取

如 

I(‘a’),a是寫msg_sender:msg_sender,冒號前邊的,而冒號後面的是資料

實際看上面的例子

$newid=I('newid');

而表單獲取的話是寫input的name的值
$keyword = I('keyword');