我正在編寫一個頁面,它會對數據庫進行一些報告。 爲了簡單起見,我所包括的一切只使用一個字段。一旦我得到我必須做的事情的概念,我可以將它應用到完整版本,這是一個更大的數據庫。PHP運行MySQLi時Jquery'加載'消息查詢
這是我的結構和我希望能夠做到的想法。我有results.php,其中有一個表單,用戶輸入一個名稱並單擊提交。 當他們點擊提交時,我希望它做一個彈出窗口(嘗試BlockUI但打開建議)與'請等待'消息。而在後臺getstuff.php抓取輸入的名稱並檢查數據庫中的該名稱。一旦它已經發現它(或沒有找到)的blockUI信息消失,在results.php形式下的表現的結果從getstuff.php
碼顯示: results.php:
<form action="getstuff.php" method="post" enctype="multipart/form-data" id="aplas" name="aplas" class="cmxform">
<table cellpadding="0" cellspacing="3" id="reportTable">
<tr>
<td><label for="name">Name: </label></td>
</tr>
<tr>
<td><input type="text" name="name" id="name" maxlength="3" size="10" /></td>
</tr>
<tr>
<td colspan="9" align="right"><input type="submit" name="submit" value="Find" id="find"></td>
</tr>
</table>
</form>
<div id="content"> </div>
getstuff.php:
$(document).ready(function(){
$('#find').click(function(){
$.blockUI;
$.post("getstuff.php", $("#aplas").serialize(), function(data) {
$('#content').html(data);
$.unblockUI;
});
});
});
:在results.php的頭
require_once('includes/DbDetails.php');
$name = $_POST['name'];
@mysqli_select_db($DBConnect, "DATABASE")
Or die("<p><b>Unable to select the database.</b></p>" . "<p>Error Code ".mysqli_errno($DBConnect).": ".mysqli_error($DBConnect))."</p>";
$SQLquery = "SELECT * FROM users WHERE name='".$name."'";
$QueryResult = @mysqli_query($DBConnect, $SQLquery)
Or die("<p>Unable to execute the query.</p>"."<p>Error Code ".mysqli_errno($DBConnect).": ".mysqli_error($DBConnect))."</p>";
$row = mysqli_fetch_row($QueryResult);
$tableString = "<table><tr><th>Name:</th></tr><tr><td>{$row[0]}</td></tr></table>";
mysqli_close($DBConnect);
echo $tableString;
的Javascript
這是我以前沒有做過的blockUI和額外文件(getstuff.php)的一部分。最初results.php表單動作本身並且全部包含在一個文件中,但是當查詢運行時,頁面似乎沒有做任何事情,這不是非常用戶友好的。
我試圖找出我需要做的事情,在查詢完成後,從results.php的getstuff.php的<div id="content">
中顯示$tableString
。
任何幫助,我哪裏去錯了,它應該看起來非常感謝。
謝謝。
我更新了原文,以反映您建議的更改。這一切似乎工作,例如沒有錯誤或任何顯示和BlockUI彈出,然後消失,好像它正在工作,但沒有什麼東西添加到#內容div? – Jake