2013-06-24 91 views
0

我很努力想弄清楚如何實現一個jquery UI日期範圍表單,該表單將允許根據輸入的日期範圍修改MySQL查詢。理想情況下,我想讓我的日期範圍表格動態地引入新的查詢數據,而不必重新加載頁面。我意識到最好和最簡單的方法是使用AJAX將表單數據發送到後端PHP文件。不過,我很困惑如何使用AJAX來修改現有的查詢。在我的主要前​​端的文件,我有一個日期範圍如下形式:使用AJAX在PHP變量中存儲表單數據以修改MySQL查詢

 <form id="myForm" action="#" method="post" name="myform"> 
      <input type="text" class = "datepicker" id="txtStartDate" placeholder = "Start Date" style = "width : 85px; margin-left: 10px; margin-top: 1mm;"/> 
      <br /> 
      <input type="text"class = "datepicker" id="txtEndDate" placeholder = "End Date" style = "width : 85px; margin-left: 10px;"/> 
      <br /> 
      <input type = "button" name = "submit" value = "Go" style = "margin-left: 10px;"/> 
     </form> 

我清楚地又寫了AJAX功能,但認爲這將有助於顯示MySQL查詢我想修改到包括日期範圍功能。這裏是什麼樣子的日期範圍變量被設置之前:

SELECT project, participant, reel, machine, qc_gsr, qc_hr, qc_acz, qc_bre 
    FROM rtcdb.session 
    WHERE site = 'ORL001'; 

這是我想什麼它看起來像日期範圍PHP變量都已設置後:

SELECT project, participant, reel, machine, qc_gsr, qc_hr, qc_acz, qc_bre 
    FROM rtcdb.session 
    WHERE site = 'ORL001' 
    AND download_date >= '$start_date' 
    AND download_date <= '$end_date'; 

因此,總而言之,我想用AJAX將表單日期發送到後端PHP腳本,該腳本可以修改或切換原始文件中的MySQL查詢用法,以根據設置的日期範圍進行選擇。非常感謝您查看此問題並瞭解您的見解。這對我很有價值。

回答

1
$("#myForm").submit(function() { //Ajax event handler on submit 
    $.ajax({ 
     type: "POST", 
     data: $(this).serialize(), 
     url: "pathToYourScript.php", 
     success: function (response) { 
      //Warn user everything went okay 
     }, 
     error: function() { 
      //Tell there's been an error 
     } 
    }); 
}); 

在你的PHP中,檢查是否設置了$ start_date和$ end_date。如果是肯定的,則切換查詢(確保使用準備好的語句)。

如果你不需要Ajax中的回調,你甚至可以使用$ .post()方法。你需要的一切都在docs

-1

使用此jQuery代碼

$( 「#myForm會」)。提交(函數(){

$.ajax({ 
url : "data.php", 
type : "POST", //(POST or GET it depends up on your form action)  
dataType : "JSON", 
data : $(this).serialize(), 
success : function (data) 
{ alert("form submission is successfull"); } , 
error : function() { alert("something went wrong");} 

}); 
}); 

在PHP文件嘗試使用POST來獲得日期或GET自然而然全局變量,然後把它作爲參數傳遞給sql查詢。使用任何良好的php驅動程序,如pdo,以避免sql注入。

+1

-1這是我的答案,但添加了json數據類型,這裏沒有明確需要。 – LMeyer

相關問題