[英]Live Search Box Using PHP, MySQL and AJAX
我正在嘗試創建一個搜索框,以顯示來自MYSQL / PHP的“地址”
我曾經使用ajax刷新頁面而不離開頁面,但是當我在瀏覽器中運行時,它總是給我一個錯誤。 當我使用控制台時,echo $ _POST ['name']的返回結果=(header.php的html代碼+“我需要什么” + footer.php的html代碼)
<?php
include 'header.php';
include 'Connect.php';
if( isset($_POST['ajax']) && isset($_POST['name']) ){
echo $_POST['name'];
exit;
}
?>
<form method="POST">
<label>Username</label>
<input type="text" name="name" required="required" id='name'>
<div id='response'></div>
</form>
<script>
$(document).ready(function(){
$('#name').keyup(function(){
var name = $('#name').val();
$.ajax({
type: 'post',
url: index.php,
data: {ajax: 1,name: name},
success: function(response){
$('#response').text(response);
}
});
});
});
</script>
<?php
if(isset($_POST['name'])){
$username = $_POST['name'];
$stmt = $con->prepare("SELECT Username, FullName, Adresse, Email, Phone FROM dbo.users WHERE Username= ?");
$stmt->execute(array($username));
while($row=$stmt->fetch(PDO::FETCH_ASSOC))
{
$Username = $row["Username"];
$FullName = $row["FullName"];
$Adresse = $row["Adresse"];
$Email = $row["Email"];
$Phone = $row["Phone"];
echo "<tr>
<div>
<td>".$Username."</td>
<td>".$FullName."</td>
<td>".$sEID."</td>
<td>".$Email."</td>
<td>".$Phone."</td>
</div>
</tr>";
}
echo "</table>
</div>";
} else echo '<div class="alert alert-danger"> This Name <strong>is not exit</strong></div>';
include $tpl.'footer.php';
}
?>
您的問題不是很清楚...如果我理解正確...這是設計使然,您正在調用頁面本身並使用整個頁面的內容更新#name,這就是為什么您看到html +“您需要的”(響應):響應是整個頁面。
正確的方法是將PHP代碼的第二部分(在其中執行查詢等)移動到單獨的腳本上,然后通過將其名稱作為url參數放在ajax調用中來調用該新腳本。
謝謝您的回復,我想使用ajax返回的值與MYSQL / PHP一起使用,以回顯$ row ['Address']; 如果我移動PHP代碼的第二部分,則結果為echo $ _POST ['name'] =(“我需要什么” + footer.php的html代碼)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.