Ajax PHP 边学边练 之三 数据库


Posted in PHP onNovember 26, 2009

本篇将继续通过该实例讲解与数据库的交互方式。实例中用到的是MySQL,也可以根据自己的需要替换为其他数据库,其连接方式可以参考PHP相关手册。

在下面源程序包中dbconnector.php 提供了与MySQL的连接函数。

<?php 
//定义数据连接变量 
define ("MYSQLHOST", "localhost"); 
define ("MYSQLUSER", "root"); 
define ("MYSQLPASS", "root"); 
define ("MYSQLDB", "test"); function opendatabase(){ 
//连接数据库所在服务器 
$db = mysql_connect (MYSQLHOST,MYSQLUSER,MYSQLPASS); 
try { 
if (!$db){ 
//若无法连接则提示错误 
$exceptionstring = "Error connection to database: <br />"; 
$exceptionstring .= mysql_errno().": ".mysql_error(); 
throw new exception ($exceptionstring); 
} 
else{ 
//连接数据库(test) 
mysql_select_db (MYSQLDB,$db); 
} 
return $db; 
}catch (exception $e){ 
echo $e->getmessage(); 
die(); 
} 
} 
?>

当鼠标放到某个日期上时会调用functions.js中的checkfortasks函数。同时checkfortasks会加载taskchecker.php程序,它会到MySQL中查询该日期下所有的备忘录信息,并将结果返回到页面中。
<?php 
//调用数据库连接程序 
require_once ("dbconnector.php"); 
//连接数据库 
$db = opendatabase(); 
//在MySQL查询备忘录 
$querystr = "SELECT description FROM task WHERE thedate='" . addslashes ($_GET['thedate']) . "'"; 
//执行SQL 
if ($datequery = mysql_query ($querystr)){ 
//判断查询是否有值 
if (mysql_num_rows ($datequery) > 0){ 
?> 
<div style="width: 150px; background: #FFBC37; border-style: solid; border-color: #000000; border-width: 1px;"> 
<div style="padding: 10px;"> 
<?php 
//显示备忘录信息 
while ($datedata = mysql_fetch_array ($datequery)){ 
if (!get_magic_quotes_gpc()){ 
echo stripslashes ($datedata['description']); 
} 
else{ 
echo $datedata['description']; 
} 
} 
?> 
</div> 
</div> 
<?php 
} 
} 
else{ 
//数据库查询错误 
echo mysql_error(); 
} 
//关闭数据库 
mysql_close ($db); 
?>

对于Ajax的使用和上一篇的原理是一样的:1. 通过事件调用Ajax函数;2. 通过函数请求其他PHP程序,PHP程序中可以对数据库之类的数据源进行读、写、改操作;3. 将处理结果加载到事件激发页面。在下图中鼠标放到26号时,Ajax会在MySQL中查询到“Football Match”事件并加载到当前页面。
Ajax PHP 边学边练 之三 数据库 
源代码下载
PHP 相关文章推荐
php中数据的批量导入(csv文件)
Oct 09 PHP
使用PHP socke 向指定页面提交数据
Jul 23 PHP
php MsSql server时遇到的中文编码问题
Jun 11 PHP
php Static关键字实用方法
Jun 04 PHP
PHP入门学习笔记之一
Oct 12 PHP
php的chr和ord函数实现字符加减乘除运算实现代码
Dec 05 PHP
ThinkPHP使用心得分享-分页类Page的用法
May 15 PHP
php实例分享之html转为rtf格式
Jun 02 PHP
大家在抢红包,程序员在研究红包算法
Aug 31 PHP
thinkphp命名空间用法实例详解
Dec 30 PHP
PHP后台微信支付和支付宝支付开发
Apr 28 PHP
PHP回调函数简单用法示例
May 08 PHP
php 运行效率总结(提示程序速度)
Nov 26 #PHP
Ajax+PHP 边学边练 之二 实例
Nov 24 #PHP
MYSQL 小技巧 -- LAST_INSERT_ID
Nov 24 #PHP
php Memcache 中实现消息队列
Nov 24 #PHP
phplock(php进程锁) v1.0 beta1
Nov 24 #PHP
PHP 进程锁定问题分析研究
Nov 24 #PHP
PHP 递归效率分析
Nov 24 #PHP
You might like
用PHP将数据导入到Foxmail
2006/10/09 PHP
解决php中Cannot send session cache limiter 的问题的方法
2007/04/27 PHP
php escape URL编码
2008/12/10 PHP
在PHP中利用wsdl创建标准webservice的实现代码
2011/12/07 PHP
Yii2实现同时搜索多个字段的方法
2016/08/10 PHP
Laravel框架验证码类用法实例分析
2019/09/11 PHP
JavaScript弹簧振子超简洁版 完全符合能量守恒,胡克定理
2009/10/25 Javascript
JQuery里面的几种选择器 查找满足条件的元素$(&quot;#控件ID&quot;)
2011/08/23 Javascript
JS中的public和private对象,即static修饰符
2012/01/18 Javascript
教你用jquery实现iframe自适应高度
2014/06/11 Javascript
javascript实现客户端兼容各浏览器创建csv并下载的方法
2015/03/23 Javascript
如何解决谷歌浏览器下jquery无法获取图片的尺寸
2015/09/10 Javascript
js canvas实现擦除动画
2016/07/16 Javascript
前端面试知识点锦集(JavaScript篇)
2016/12/28 Javascript
微信小程序 switch组件详解及简单实例
2017/01/10 Javascript
JavaScript定义全局对象的方法示例
2017/01/12 Javascript
jQuery选择器之子元素选择器详解
2017/09/18 jQuery
详解vue项目的构建,打包,发布全过程
2017/11/23 Javascript
js中let和var定义变量的区别
2018/02/08 Javascript
详解vue添加删除元素的方法
2018/06/30 Javascript
JS实现可切换图片的幻灯切换效果示例
2019/05/24 Javascript
js实现多图和单图上传显示
2019/12/18 Javascript
Node.js设置定时任务之node-schedule模块的使用详解
2020/04/28 Javascript
Python基于PycURL自动处理cookie的方法
2015/07/25 Python
浅析Python+OpenCV使用摄像头追踪人脸面部血液变化实现脉搏评估
2019/10/17 Python
PyTorch 导数应用的使用教程
2020/08/31 Python
淘宝网店营销策划书
2014/01/11 职场文书
大学生村官典型材料
2014/01/12 职场文书
大学优秀班主任事迹材料
2014/05/02 职场文书
中药学专业求职信
2014/05/31 职场文书
国际经济与贸易专业求职信
2014/07/10 职场文书
预备党员对照检查材料思想汇报
2014/09/24 职场文书
2015年清明节演讲稿范文
2015/03/17 职场文书
奖励申请报告范文
2015/05/15 职场文书
生日祝酒词大全
2015/08/10 职场文书
深入讲解数据库中Decimal类型的使用以及实现方法
2022/02/15 MySQL