2016-12-30 83 views
0

我是AJAX(和一般網站開發)的新手,我在使用jQuery和AJAX刪除wordpress中的數據庫條目時遇到了問題。
用戶在表中選擇一個條目,然後單擊一個按鈕將其刪除。 該表使用數據表插件和廣泛的編碼創建,使其按照我需要的方式工作。
jQuery代碼位於functions.php中,實際查詢位於服務器上的文件中。
我一直在使用這個how to delete records from database with an Ajax作爲代碼的基準。另外,請注意,我正在使用wordpress 我的問題是它似乎沒有從數據庫中刪除條目。AJAX刪除數據庫條目

這裏是functions.php中代碼:

var GroupID2Del = dt.row({ 
      selected: true 
     }) 
     .data()[23]; 
    if (confirm('Are you sure you want to delete this row?')) { 
     jQuery.ajax({ 
      type: 'POST' 
      , url: '/wp-content/AJAX/ViewTable_DeleteEntry.php' 
      , data: 'groupid=' + GroupID2Del 
      , success: function (data) { 
       dt.row({ 
         selected: true 
        }) 
        .remove(); 
       jQuery('#UserTable') 
        .DataTable() 
        .draw(); 
       alert(data); 
      } 
     }); 
    } 

GroupID2Del是我如何得到它的ID在表中選擇行。然後我從表格中刪除該行。該行確實被刪除。

這裏是ViewTable_DeleteEntry.php在function.php

<?php 
    $dataPosted = $_POST['groupid']; 
    $sql = ('delete from wp_piic_formmaker_submits WHERE form_id = 13 and group_id ='.$dataPosted); 
     mysql_query($sql); 
    $count = mysql_affected_rows(); 
     print $count;?> 

警報提供正確的SQL,但$count是空的,因爲它實際上並沒有刪除任何東西。

+0

你能'回聲從wp_piic_formmaker_submits刪除WHERE form_id = 13和GROUP_ID =」 $ dataPosted;' – Akshay

+1

調試你的代碼,檢查你在'$ _POST'中得到了什麼,如果你正在正確接收數據,那麼檢查@Akshay建議的查詢。 – tejashsoni111

+0

我做了,我不知道我應該看到什麼 但是,即使在拿出echo語句之後,我現在正在收到錯誤日誌 PHP警告:mysql_query():訪問被拒絕用戶'ubm'@' localhost'(使用密碼:NO)在第8行的/home1/rojectx3/public_html/wp-content/AJAX/ViewTable_DeleteEntry.php PHP警告:mysql_query():無法在/ home1/rojectx3中建立到服務器的鏈接/public_html/wp-content/AJAX/ViewTable_DeleteEntry.php on line 8 我想我還沒有登錄!在這個文件中使用用戶名和密碼不是不安全的嗎?我怎麼做? – G1408

回答

0

請試試這個:

var myKeyVals = { groupid : GroupID2Del} 
    jQuery.ajax(
     { 
     type: 'POST', 
     url: '/wp-content/AJAX/ViewTable_DeleteEntry.php', 
     data: myKeyVals, 
     success: function(data) 
     { 
      dt.row({selected: true }).remove();            
      jQuery('#UserTable').DataTable().draw(); 
      alert(data); 
     } 
    }); 

$dataPosted = $_POST['groupid']; 
if($dataPosted != ''){ 
$sql = ('delete from wp_piic_formmaker_submits WHERE form_id = 13 and group_id ='.$dataPosted); 
    mysql_query($sql); 

$count = mysql_affected_rows(); 
} else { 
echo 'Blank Record'; 
} 
+0

沒有工作 未捕獲的ReferenceError:myKeyVals未定義 – G1408

0

所以,問題是,我沒有連接到數據庫,所以我增加了以下線在php文件的開頭

<?php 
$servername = "localhost"; 
$username = "username"; 
$password = "password"; 
$dbname = "dbname"; 


mysql_connect($servername, $username, $password, $dbname) or die("Connection failed"); 
mysql_select_db($dbname) or die("No Database found.");