2013-11-28 77 views
1

所以在post_action.php中,我有一堆div被echo'd來測試在我的ajax請求期間是否到達該文件。當我點擊.deletePost時,我收到一條警告,說'已成功刪除',這讓我相信ajax請求正在工作,但是來自post_action.php的內容爲「hello world」的div不在那裏。有什麼想法嗎?我的Ajax請求返回成功,但腳本未執行?

post_action.php

<?php 

include 'db_connect.php'; 
include 'functions.php'; 
sec_session_start(); 
echo "<div>Hello World</div>"; 
echo "<div>Hello World</div>"; 
echo "<div>Hello World</div>"; 
echo "<div>Hello World</div>"; 
if($_GET['action'] == "deletePost") 
     deletePost($_GET['postTitle']); 
function deletePost($title){ 
    $sql = "DELETE FROM blog WHERE Title = '$title'"; 
    mysqli_query($mysqli, $sql); 
} 
?> 

的functions.php

<?php 
function sec_session_start() { 
    $session_name = 'sec_session_id'; // Set a custom session name 
    $secure = false; // Set to true if using https. 
    $httponly = true; // This stops javascript being able to access the session id. 

    ini_set('session.use_only_cookies', 1); // Forces sessions to only use cookies. 
    $cookieParams = session_get_cookie_params(); // Gets current cookies params. 
    session_set_cookie_params($cookieParams["lifetime"], $cookieParams["path"], $cookieParams["domain"], $secure, $httponly); 
    session_name($session_name); // Sets the session name to the one set above. 
    session_start(); // Start the php session 
    session_regenerate_id(); // regenerated the session, delete the old one. 
} 
?> 

dbconnect.php

<?php 
$host="localhost"; // Host name 
$username="root"; // username 
$password="********"; // password 
$dbname="nightowl"; // Database name 
$tblname="blog"; // Table name 
$mysqli=mysqli_connect($host,$username,$password,$dbname); 
mysql_connect("$host", "$username", "$password"); 
mysql_select_db("$dbname"); 
?> 

的Javascript

$(document).ready(function(){ 
$('.deletePost').click(function(){ 
    $.ajax({ 
     url:"scripts/post_action.php", 
     data: {action: "deletePost", postTitle: $(this).siblings("h3.blog").text()}, 
     success: function(){ 
      alert('DELETED SUCCESSFULLY'); 
     } 
    }); 
}); 
}); 
+0

不確定你的意思是'divs沒有出現' –

+0

哪個divs是你的意思? -_- –

+1

查看Ramesh的回答! –

回答

2

,你必須首先準備一個元素的HTML中(在這種情況下div):

<div id='container'> 
</div> 

,然後你的成功的ajax:

success: function(response){ //retrieves the return from php 
     $("#container").html(response); //put the return inside the element that has id = container 
     alert('DELETED SUCCESSFULLY'); 
    } 

所以,你的:

echo "<div>Hello World</div>"; 
echo "<div>Hello World</div>"; 
echo "<div>Hello World</div>"; 
echo "<div>Hello World</div>"; 

將出現在ID爲container的div內。

2

對於在PHP腳本post_actions.php呼應的div出現你需要做的:

success: function(response){ 
     $("#containerWhereDivsCome").html(response); 
     alert('DELETED SUCCESSFULLY'); 
    } 
+1

我們必須建立''div id ='containerWhereDivsCome'>'第一個.. –

+0

所以那裏會有'div'' div' –

+0

是的正確@Oki Erie Rinaldi – Ramesh