2013-07-29 93 views
-2

我想知道如何通過AJAX將變量傳遞給另一個php文件?如何通過AJAX/jQuery傳遞變量?

必須被傳遞的變量稱爲:

$id 

的問題是,我在「pm_form.php」的形式有變量「$ ID」的訪問權限。

我的劇本是這樣的(這個腳本觸發一個模態窗口和模態窗口加載一個名爲「pm_form.php」形式):

$(".pm_link").colorbox($.extend(defaults, { 
     initialWidth:'348', 
     initialHeight:'348', 
     innerWidth:'348', 
     innerHeight:'348', 
     type: "POST", 
     href: "<?php echo $setting['site_url'];?>/includes/forms/pm_form.php", 

     onComplete: function(){ 
      $("#cboxLoadedContent").appendTo("#cboxContent"); 

      var title = 'Send Message'; 
      $('#cboxTitle').text(title); 
     } 
    })); 

當我點擊我的形式提交按鈕的變量'$ id'應該被傳遞給適當的php文件。

這是我的形式:

<div id="pm_content" class="modal_font_indent"> 
<div id="pm_form"> 
    <form name="form1" method="post" action="<?php echo $setting['site_url']?>/index.php?id=<?php echo $id;?>&task=send_message&done=1"> 

     <div id="pm_subject" class="form_alt_design"> 
      <div id="pm_subject_txt"><label for="message_title">Subject:</label></div> 
      <input type="text" name="message_title" id="message_title" class="pm_subject_textbox" value="" /> 
     </div> 

     <div id="pm_message" class="form_alt_design"> 
      <div id="pm_message_txt"><label for="message">Message:</label></div> 
      <textarea name="message" cols="50" rows="4" id="message" class="pm_message_textbox"></textarea> 
      <div id="pm_chars_left">Characters left:</div> 
     </div>  

     <div id="pm_submit"> 
      <input type="submit" name="Submit" value="" class="pm_button" /> 
     </div> 

    </form> 
</div> 

請 - 任何幫助嗎?我不知道很多有關jQuery的/ AJAX :(

解決方案:

我只是附和我的$ id ...

的href:「/includes/forms/pm_form.php?id= 」 ......在我pm_form.php,我可以用$ _GET全球爲搶ID參數:

的$ id = $ _GET [ '身份證'];

感謝您的幫助! :)

+0

是從PHP或JavaScript的變量。因爲它對於這兩種語言都是有效的語法。 –

+0

當您點擊一個名爲'發送下午'的按鈕時,會出現一個MODAL窗口。觸發模式窗口的腳本是'.pm_link'。該模式窗口加載名爲pm_form.php的表單。問題是我無法訪問名爲'$ id'的變量。基本上我只需要訪問該變量,所以我想知道是否有一種方法可以將該變量從一個腳本傳遞到另一個腳本。 – drpelz

+0

爲什麼倒票? – drpelz

回答

1

要將變量從一個PHP頁面傳遞到另一個頁面,您需要使用POST或GET方法。使用POST ['tag of name']並將其存儲在一個單獨的變量中。

例如, :$ variable1 = $ _POST [name];

1

由於您發送的值爲POST 您可以在另一個頁面中將該值讀取爲$ _POST ['value_from_previous_page'];

這是我使用的形式值發送到另一個頁面

function Gonder() 
{ 
    var str = $("form").serialize(); 
    $.ajax({ 
     type: "POST", 
     url: "other_page.php", 
     data: str, 
     success: function(data){ 
      $('#load').fadeOut(); 
      $('#ShowResult').html(data); 
     } 
    }); 
return false; 
} 
1

按照jQuery docs

$.ajax({ 
    type: "POST", 
    url: "some.php", 
    data: { name: "John", location: "Boston" } 
}).done(function(msg) { 
    alert("Data Saved: " + msg); 
});