簡體   English   中英

使用AJAX更新MySQL數據庫

[英]Update MySQL database with AJAX

我有一個帶有提交按鈕和關閉按鈕的表單。 如果用戶輸入內容並單擊“提交”按鈕,則答案將被發布並保存在數據庫中。 如果用戶單擊關閉按鈕,則將在數據庫內部使用當前時間戳更新條目。

一切工作正常,但是如果有人單擊AJAX的關閉按鈕,我現在想進行那些更改,這樣我就不必重新加載頁面。

我的提交按鈕的代碼是:

<input type='submit' id='setclosed' value='Close Ticket' name='setclosed' class='btn btn-warning' />

現在,如果有人單擊“提交”按鈕,則會在我當前的文件中激活以下代碼(因此,沒有用於php處理的外部文件):

if (isset ($_POST['setclosed'])) {    // Setze Status auf Closed
    $updatecontent_success=array('stamp_closed'=>$localtime);
    updateContractTicket($show_details,$updatecontent_success);
}

我必須怎么做才能更新數據庫條目,但頁面不會重新加載?

這是一個快速的AJAX示例,助您一臂之力。 您應該將PHP和Javascript / HTML代碼分開。 我會寫出這兩個文件。

在您的HTML文件中,您將擁有html代碼和將發出請求的JavaScript,然后提醒用戶該請求已通過。 確保您的表單不提交任何內容。

-HTML

<button type='button' id='setclosed' name='setclosed'   class='btn btn-warning'>Close Ticket</button>

-Javascript

$('#setclosed').click(function() {
  $.post('ajax.php',
    {   cmd: 'setclosed' },
    function(data) {
        alert('AJAX request was made');
    }, 'json'
  );
});

ajax將PHP讀取的POST變量發送為$_POST["cmd"] 這將讓你的php執行該命令的必要代碼,回顯狀態,然后退出php文件。

-PHP

if ($_POST["cmd"]=='setclosed') {
  $updatecontent_success=array('stamp_closed'=>$localtime);
  $updateContractTicket($show_details,$updatecontent_success);
  echo json_encode(array('Status' => 'Ok'));
  exit(0);
}

如果有什么不清楚,請告訴我。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM