我想將數據添加到我的數據庫,並取回訪問數據庫的php響應。在ajax請求後從php獲取響應文本
javascript代碼:
var request = $.ajax({
type: "POST",
url: "nieuwDuel.php",
data: dataString,
success: function(response)
{
var responseText = "onbekend";
responseText = jQuery(response);
document.getElementById("duelToegevoegd").innerHTML=responseText;
$("#openstaandeDuels").load("getOpenstaandeDuels.php");
}
});
所以當一個名稱是無效或已經存在,我可以在我的html添加此消息span元素。
這是我的PHP代碼:
<?php
if($_POST)
{
// Create connection
$con=mysqli_connect("localhost","root","root","websitedb");
// Check connection
if (mysqli_connect_errno()) {
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$date = getdate();
$date_time = $date['year'] . "-" . $date['mon'] . "-" . $date['mday'] . " " . $date['hours'] . ":" . $date['minutes'] . ":" . $date['seconds'];
$uitdagerArray = mysqli_query($con,"SELECT id FROM deelnemers WHERE naam='" . $_POST['uitdager'] . "'");
$uitgedaagdeArray = mysqli_query($con,"SELECT id FROM deelnemers WHERE naam='" . $_POST['uitgedaagde'] . "'");
$uitdager = mysqli_fetch_array($uitdagerArray);
$uitgedaagde = mysqli_fetch_array($uitgedaagdeArray);
$uitdagerId = $uitdager['id'];
$uitgedaagdeId = $uitgedaagde['id'];
$sql="INSERT INTO duels (uitdager, uitgedaagde, aanmaakdatum, gespeeld) VALUES ('" . $uitdagerId . "','" . $uitgedaagdeId . "','" . $date_time . "','" . "0" . "')";
if(!mysqli_query($con,$sql)) {
echo mysql_errno() . ": " . mysql_error() . "\n";
}
else {
echo "Duel Toegevoegd";
}
mysqli_close($con);
}
?>
那麼,這可能是從我的PHP代碼回聲文本將被傳遞到來自更迭功能的「迴應」?
編輯:
這是我的html代碼
<div id="nieuwDuel">
<h2>Nieuw Duel</h2>
<form name="form" method="post">
Uitdager: <input type="text" id="naamUitdager" placeholder="naam uitdager">
Uitgedaagde: <input type="text" id="naamUitgedaagde" placeholder="naam uitgedaagde">
<input type="submit" class="nieuwDuelToevoegen">
</form>
<span id="duelToegevoegd" style="display:none"></span>
<a href="index.php#home">Home</a>
</div>
它總是傳遞給你的成功函數(除非有錯誤)。我沒有看到問題。 – putvande
是的,那是應該做的。在成功聲明的最後一行中,嘗試添加警報(響應)以查看它。 – bart2puck
響應是您從ajax調用中檢索到的文本,您可以僅通過jquery回顯或放入html元素。因此,請確保document.getElementById(「duelToegevoegd」)。innerHTML(response); – Naruto