一种利用ajax js与php实现数据库动态查询的方法
2016-04-08 16:54
921 查看
1.利用ajax js向后端的php提交query请求,将要查询的sql存放到$_POST['sql'],并把$_POST['showtable']置为1;
2.后端php向mysql数据库提交query请求,并将查询结果以表格的形式返回,查询结果的头部以HTML注释的形式标注出查询是否成功的结果,以及表格的宽度和高度(交互信息放置于HTML注释中)。
例如:
查询成功为:<!-- 302 -->
查询失败为:<!-- 403 -->
没有结果为:<!-- 404 -->
通过同时使用HTML注释和HTML明文,在同一个返回结果内同时实现用户交互和前台交互,并实现用户交互和前台交互的分离。
3.通过ajax js的连续刷新,实现网页的动态交互,后方操作细节不变,使交互逻辑主要由前台js实现,后端php只负责查询操作,实现动静分离。
华侨大学专利,Published under GPLv2
\n";
}
}
else
{
echo "\n";
echo "\n";
echo "没有符合条件的记录。
\n";
}
$db -> close();
$db = null;
}
else
{
echo "\n";
echo "检索失败,请重新提交。
\n";
}
?>
2.后端php向mysql数据库提交query请求,并将查询结果以表格的形式返回,查询结果的头部以HTML注释的形式标注出查询是否成功的结果,以及表格的宽度和高度(交互信息放置于HTML注释中)。
例如:
查询成功为:<!-- 302 -->
查询失败为:<!-- 403 -->
没有结果为:<!-- 404 -->
通过同时使用HTML注释和HTML明文,在同一个返回结果内同时实现用户交互和前台交互,并实现用户交互和前台交互的分离。
3.通过ajax js的连续刷新,实现网页的动态交互,后方操作细节不变,使交互逻辑主要由前台js实现,后端php只负责查询操作,实现动静分离。
华侨大学专利,Published under GPLv2
<?php header("Content-Type:text/html; charset=gbk"); require "../inc/mysql.php"; if(isset($_POST['showtable'])) { $showtable = $_POST['showtable']; } else { $showtable = 1; } if(isset($_POST['sql'])) { $sql = $_POST['sql']; } else { $sql = ""; } $db = new mysql; $db -> url = "localhost"; $db -> uid = "root"; $db -> pwd = "root"; $db -> connect(); if($sql != "") { $db -> select_db("caigou"); $db -> query("set names gbk"); $db -> query($sql); $n = $db -> num_rows(); if($n != 0) { echo "\n"; echo "\n"; if($showtable) { $field = mysqli_fetch_fields($db -> rs); $m = sizeof($field); echo "
" . $field[$x]->name . " |
---|
$row[$x] |
}
}
else
{
echo "\n";
echo "\n";
echo "没有符合条件的记录。
\n";
}
$db -> close();
$db = null;
}
else
{
echo "\n";
echo "检索失败,请重新提交。
\n";
}
?>
相关文章推荐
- 深入理解PHP Opcode缓存原理
- PHP中命名空间不足之详解
- PHP文件处理--写入文件
- php开发-- 海底苍鹰(tank)博客
- php视频教程
- curl与php
- Debian8搭建php环境
- PHP 二维数组根据某个字段进行排序
- php7垃圾回收分析
- [Laravel] Laravel的基本使用
- php中\r \r\n \t的区别
- PHP图片上传程序(完整版)
- php单例模式应用于mysql数据库操作
- lsof -Pni4 | grep LISTEN | grep php
- php如何定义数组常量
- 安装php-solr扩展
- dirname(__FILE__) 获取当前php文件的完整路径
- js调用php和php调用js的方法举例
- Sublime text 2/3 [Decode error - output not utf-8] 完美解决方法
- Sublime text 2/3 [Decode error - output not utf-8] 完美解决方法