要提交表单,从数据库中收集结果并将其呈现给用户而不进行页面刷新,重定向或重新加载,您需要:
>使用Ajax将表单中的数据发布到php文件中;
>后台的该文件将查询数据库并获取他收到的数据的结果;
>使用查询结果,您需要将其注入页面中的html元素,该元素已准备好向用户显示结果;
>最后,您需要设置一些控件,让样式和文档工作流程顺利运行.
所以,说到这里,这是一个有效的例子:
我们有一个表“人”,字段“年龄”和字段“名称”,我们将搜索年龄为32岁的人.接下来,我们将在一个div中显示他们的名字和年龄与粉红色背景的表还有一个非常大的文字.
为了正确测试这个,我们将有一个灰色的标题,正文和页脚!
的index.php
Search And Show Without Refresh$(function() {
$("#lets_search").bind('submit',function() {
var value = $('#str').val();
$.post('db_query.php',{value:value}, function(data){
$("#search_results").html(data);
});
return false;
});
});
HEADER
Search:
FOOTER
db_query.php
define("HOST", "localhost");
// Database user
define("DBUSER", "username");
// Database password
define("PASS", "password");
// Database name
define("DB", "database_name");
// Database Error - User Message
define("DB_MSG_ERROR", 'Could not connect!
Please contact the site\'s administrator.');
############## Make the mysql connection ###########
$conn = mysql_connect(HOST, DBUSER, PASS) or die(DB_MSG_ERROR);
$db = mysql_select_db(DB) or die(DB_MSG_ERROR);
$query = mysql_query("
SELECT *
FROM persons
WHERE age='".$_POST['value']."'
");
echo '
while ($data = mysql_fetch_array($query)) {
echo '
'.$data["name"].''.$data["age"].'';}
echo '
';?>
控制的东西取决于你想要的,但使用该代码,将这两个文件放在同一个目录中,你应该没事!
任何问题或更明确的代码,请告诉我们;)