Ajax PHP 边学边练 之三 数据库_php技巧

本篇将继续通过该实例讲解与数据库的交互方式。实例中用到的是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”事件并加载到当前页面。
 
源代码下载

时间: 2024-09-29 15:42:31

Ajax PHP 边学边练 之三 数据库_php技巧的相关文章

php+ajax简单实现全选删除的方法_php技巧

本文实例讲述了php+ajax简单实现全选删除的方法.分享给大家供大家参考,具体如下: <input type="checkbox" id="ckb_selectAll" onclick="selectAll()" title="选中/取消选中"> <a href="javascript:void(0);" onclick="del_()" title="删除

PHP+mysql+ajax轻量级聊天室实现方法详解_php技巧

本文实例讲述了PHP+mysql+ajax轻量级聊天室实现方法.分享给大家供大家参考,具体如下: 做了一个QQ聊天交友网站,想加个聊天的功能,于是做完用PHP做了简单又强大的聊天室 1. 创建mysql数据库表: 复制代码 代码如下: create table chat( id bigint AUTO_INCREMENT,username varchar(20), chatdate datetime,msg varchar(500), primary key(id)); 2.编写建议连接数据库函

Ajax+PHP 边学边练之四 表单_php技巧

谈到Form就涉及到一个发送请求方式问题(GET和POST),对于GET和POST的使用和区别在本文就不详细说明了,一般对于Web开发由于POST传值为隐式且传输数据量较大所以比较常用.在本例中对functions.js进行下修改,将创建XMLHttp对象程序创建为一个函数processajax. 复制代码 代码如下: function processajax (serverPage, obj, getOrPost, str){ //将创建XMLHttpRequest对象写到getxmlhttp

Ajax+PHP边学边练 之五 图片处理_php技巧

先上个效果图:  Sample6_1.php 中创建Form: 复制代码 代码如下: //显示上传状态和图片 <div id="showimg"></div> //上传文件需要定义enctype,为了显示图片将target设为uploadframe <form id="uploadform" action="process_upload.php" method="post" enctype=&qu

Ajax+PHP 边学边练 之二 实例_php技巧

效果1. 当鼠标放在某日上时,如果当天有备忘录,则会显示出来,如下图: 复制代码 代码如下: function checkfortasks (thedate, e){ //找到页面中taskbox对应<div>设置为可见 theObject = document.getElementById("taskbox"); theObject.style.visibility = "visible"; //初始化taskbox位置 var posx = 0; v

ajax php 实现写入数据库_php技巧

首先需要一个带输入表格. 复制代码 代码如下: <!-- To change this template, choose Tools | Templates and open the template in the editor. --> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title></title

PHP+Ajax实时自动检测是否联网的方法_php技巧

本文实例讲述了PHP+Ajax实时自动检测是否联网的方法.分享给大家供大家参考.具体实现方法如下: html部分代码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xht

php+ajax实现无刷新数据分页的办法_php技巧

本文实例讲述了php+ajax实现无刷新分页的方法.分享给大家供大家参考.具体实现方法如下: index.php 文件,代码如下: <?php header("Content-type: text/html;charset=GBK");//输出编码,避免中文乱码 ?> <html> <head> <title>ajax分页演示</title> <script language="javascript"

php+ajax实现无刷新的新闻留言系统_php技巧

本文介绍了一款无刷新的新闻留言系统,最简明易懂的一个ajax无刷新留言系统,源码中省略了接受数据验证的过程,大家可根据自己的需求进行扩展,下面进入主题. 核心源码: 1.配置文件:config.php,代码如下: <?php //数据库配置信息(用户名,密码,数据库名,表前缀等) $cfg_dbhost = "localhost"; $cfg_dbuser = "root"; $cfg_dbpwd = "root"; $cfg_dbname