`
化蝶自在飞
  • 浏览: 2336530 次
  • 性别: Icon_minigender_2
  • 来自: 武汉
社区版块
存档分类
最新评论

php连接access,php操作access源码

    博客分类:
  • php
阅读更多

php连接access,php操作access源码,下面直接上代码:

<?php
define('ACC_ROOT', str_replace("\\", '/', dirname(__FILE__)).'/');//定义本程序根路径 http://www.k686.com绿色软件 版权所有
define('DB_HOST',ACC_ROOT.'#%201f9558a613f476d0d591.mdb');//定义access存放路径
include(ACC_ROOT.'access/db_access.class.php');//载入access类库
$blogdb = new db_access;//实例化
$blogdb->connect(DB_HOST, DB_USER, DB_PW, DB_NAME, DB_PCONNECT, DB_CHARSET);//开启access链接
$execarr = array();
$sqlblog = $blogdb->query("select log_ID,log_Title,log_Intro,log_PostTime,log_CateID from blog_Article order by log_PostTime DESC limit 0,5");
while($arrblog = $blogdb->fetch_array($sqlblog))
    {
	$execarr[] = $arrblog;
	}
$cat = array(3=>'easay',4=>'video',5=>'bridalveil',6=>'activity',8=>'photo',9=>'media',10=>'wedding');//定义url链接目录
$ext = 'gif|jpg|jpeg|bmp|png';//罗列图片后缀从而实现多扩展名匹配 by http://www.k686.com 绿色软件
foreach($execarr AS $k=>$v)
{
preg_match_all("/(href|src)=([\"|']?)([^ \"'>]+\.($ext))\\2/i", $v['log_Intro'], $matches);
              $imgsrc = 'http://www.k686.com/'.str_replace('upload','attachments',$matches[3][0]);
echo '<li><a href="http://www.k686.com/'.$cat[$v['log_CateID']].'/'.$v['log_ID'].'.html" target="_blank">
						<img src="'.$imgsrc.'" width="87" height="58" />
						<h4>'.$v['log_Title'].'</h4>
						<p>POST TIME:'.$v['log_PostTime'].'</p></a></li>';
}
?>

 

 

里面加了部分注释.

下面是access链接类代码,来自phpcms程序(http://www.phpcms.cn) :

<?php
class db_access
{
	var $querynum = 0;
	var $conn;
	var $insertid = 0;
	var $cursor = 0;

	function connect($dbhost, $dbuser = '', $dbpw = '', $dbname = '', $pconnect = 0)
	{
		$this->conn = new com('adodb.connection');
		if(!$this->conn) return false;
		//	or exit('Cannot start ADO');
		$this->conn->open("DRIVER={Microsoft Access Driver (*.mdb)};dbq=$dbhost;uid=$dbuser;pwd=$dbpw");
		if($this->conn->state == 0)
		{
			$this->conn->open("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=$dbhost");
			if($this->conn->state == 0)	return false;;
		}
		define('NUM', 1);
		define('ASSOC', 2);
		define('BOTH', 3);
		return $this->conn->state;
	}


	function select_db($dbname)
	{
		return $this->conn->state;
	}

	function query($sql, $type = '', $expires = 3600, $dbname = '')
	{
		$this->querynum++;
		$sql = trim($sql);
		if(preg_match("/^(select.*)limit ([0-9]+)(,([0-9]+))?$/i", $sql, $matchs))
		{
			$sql = $matchs[1];
			$offset = $matchs[2];
			$pagesize = $matchs[4];
			$query = $this->conn->Execute($sql);
			return $this->limit($query, $offset, $pagesize);
		}
		else
		{
			return $this->conn->Execute($sql);
		}
	}

	function get_one($query)
	{
		$this->querynum++;
	    $rs = $this->conn->Execute($query);
		$r = $this->fetch_array($rs);
		$this->free_result($rs);
		return $r;
	}

	function fetch_array($rs, $result_type = 3)
	{
		if(is_array($rs))
		{
			return $this->cursor < count($rs) ? $rs[$this->cursor++] : FALSE;
		}
		else
		{
			if($rs->EOF) return FALSE;
			$array = array();
			for($i = 0; $i < $this->num_fields($rs); $i++)
			{
				$fielddata = $rs->Fields[$i]->Value;
			    if($result_type == NUM || $result_type == BOTH) $array[$i] = $fielddata;
			    if($result_type == ASSOC || $result_type == BOTH) $array[$rs->Fields[$i]->Name] = $fielddata;
			}
			$rs->MoveNext();
			return $array;
		}
	}
	
	function select($sql, $keyfield = '')
	{
		$array = array();
		$result = $this->query($sql);
		while($r = $this->fetch_array($result))
		{
			if($keyfield)
			{
				$key = $r[$keyfield];
				$array[$key] = $r;
			}
			else
			{
				$array[] = $r;
			}
		}
		$this->free_result($result);
		return $array;
	}

	function num_rows($rs)
	{
	    return is_array($rs) ? count($rs) : $rs->recordcount;
	}

	function num_fields($rs)
	{
	    return $rs->Fields->Count;
	}

	function fetch_assoc($rs)
	{
	    return $this->fetch_array($rs, ASSOC);
	}

	function fetch_row($rs)
	{
	    return $this->fetch_array($rs, NUM);
	}

	function free_result($rs)
	{
	    if(is_resource($rs)) $rs->close();
	}

	function error()
	{
	    return $this->conn->Errors[$this->conn->Errors->Count-1]->Number;
	}

	function errormsg()
	{
	    return $this->conn->Errors[$this->conn->Errors->Count-1]->Description;
	}

	function close()
	{
	    $this->conn->close();
	}

	function limit($rs, $offset, $pagesize = 0)
	{
		if($pagesize > 0)
		{
			$rs->Move($offset);
		}
		else
		{
			$pagesize = $offset;
		}
		$info = array();
		for($i = 0; $i < $pagesize; $i++)
		{
			$r = $this->fetch_array($rs);
			if(!$r) break;
			$info[] = $r;
		}
		$this->free_result($rs);
		$this->cursor = 0;
		return $info;
	}
}
?>

 

看下这段代码,里面可以使用limit函数哦.也就是说你的sql语句支持limit语句.可以看最上面的例子代码.代码测试通过.

分享到:
评论

相关推荐

    asp源码(ACCESS版)

    学习这套源码,你可以了解到如何使用ASP连接和操作Access数据库,如何处理用户交互,以及如何设计和实现Web应用的常用功能。对于初学者,这是一个很好的实践平台,通过实际动手操作,可以深入理解ASP编程原理和Web...

    最简易PHP Access文章管理 v1.0.rar

     2.PHP如何连接Access数据  3.PHP如何操作(添、改、删)数据  4.PHP如何使用Cookie  5.PHP如何使用分页  最简易PHP Access文章管理系统后台登陆方法:  admin.php  用户名:admin  密码:admin

    PHP标准企业网站源码

    - `fc.php`:可能是一个辅助或配置文件,用于处理特定功能或连接ACCESS数据库。 4. **网站功能**:从文件名可以推测,此企业网站具备以下功能: - 首页展示:通过`Index.php`展示公司简介、产品或服务信息等。 -...

    留言墙留言板php源码access,mysql,sqlite和不用连接数据库的text,txt

    PHP可以通过ADOdb或PDO等扩展来连接和操作Access数据库。 - MySQL:是最流行的关系型数据库之一,具有高性能和广泛支持。PHP通过MySQLi或PDO_MySQL扩展与MySQL通信。 - SQLite:是一款轻量级的、无服务器的、自...

    php+access区块链源码.zip

    php区块链源码,php+access数据库做区块链,代码可直接使用,无需修改。 代码本人纯手写,看不懂的请见谅!!! 1个积分就当赏给小的辛苦费吧

    PHP+Access 留言本

    PHP通过ODBC(Open Database Connectivity)或者更现代的PDO(PHP Data Objects)扩展来连接和操作Access数据库。ODBC是一种标准的数据库访问接口,使得PHP能够透明地访问多种数据库,包括Access。PDO则提供了更安全...

    PHP+access开发网站实例程序

    这个程序包含了一个基础的管理系统,提供了数据操作(删除、添加、更改)以及用户登录功能,是学习PHP与Access集成应用的好材料。 PHP(Hypertext Preprocessor)是一种广泛使用的开源服务器端脚本语言,尤其适合于...

    php+access产品介绍网站全站源代码

    以前用php+access制作的产品网站,支持三级分类,后台用户和密码都是admin123,或者可以根据说明中的密码自己修改后台数据库。 至于为什么使用access而不是mysql,只能说当初的“一失足”吧,不说了,程序是全的,...

    Flex3连接access数据库实例源码.rar

    在"Flex3连接access数据库实例源码"中,我们关注的核心知识点是Flex3如何与Access数据库进行通信。这通常涉及到数据访问层的实现,使用ActionScript 3.0(Flex的主要编程语言)来执行SQL查询并处理结果。 1. **Flex...

    PHP实例开发源码—php+access 通用考试查分系统.zip

    3. **数据库连接与操作**:使用PHP的`mysqli`或`PDO`扩展与Access数据库进行交互,包括建立连接、执行SQL查询、插入、更新和删除数据等操作。例如,`SELECT`语句用于获取分数,`INSERT`用于添加新的考试记录。 4. *...

    myblog Access版_多用户博客空间源码下载.rar

    "博客空间]myblog v1.2 Access版_myblog12a" 这个文件名可能是源码的主要文件或者安装包,它表明这是myblog的v1.2版本,特别强调了Access版,可能包含数据库配置和相关的PHP脚本。 **详细知识点** 1. **多用户系统...

    ASP源码—DBAdmin 在线Access数据库管理程序 v2.3.zip

    在实际应用中,ASP源码的DBAdmin程序可以方便地用于小型网站的数据管理,特别是那些使用Access作为后端数据库的网站。然而,由于Access在多用户并发访问和大数据量处理方面的能力有限,对于大型企业级应用,通常会...

    酒店管理系统 ,用PHP+ACCESS做的

    本系统采用PHP编程语言和ACCESS数据库作为核心技术栈,旨在提供高效、便捷的操作界面,帮助酒店提升服务质量,降低管理成本。 【PHP技术详解】 PHP(Hypertext Preprocessor)是一种广泛使用的开源脚本语言,尤其...

    【PHP项目源码-毕业设计期末大作业】ASP+ACCESS源码:21百合婚恋交友网站程序.zip

    PHP后端项目整站源码毕业设计期末大作业 PHP后端项目整站源码毕业设计期末大作业 PHP后端项目整站源码毕业设计期末大作业 PHP后端项目整站源码毕业设计期末大作业 PHP后端项目整站源码毕业设计期末大作业 PHP后端...

    最简易PHP/Access文章管理 v1.0.rar

    2.PHP如何连接Access数据 3.PHP如何操作(添、改、删)数据 4.PHP如何使用Cookie 5.PHP如何使用分页     最简易PHP Access文章管理系统后台登陆方法: admin.php 用户名:admin 密码:admin

    基于PHP的ACCESS简单留言本源码.zip

    【标题】"基于PHP的ACCESS简单留言本源码"指的是一个使用PHP编程语言开发的、以ACCESS数据库为存储后台的简单在线留言系统。这个源码可能是为了教学、学习或者快速搭建一个小型网站的互动功能而设计的。PHP是一种...

    PHP实例开发源码-人事管理系统 php版.zip

    在员工信息管理模块中,PHP通过连接MySQL数据库,进行增删改查操作。开发者可以参考代码中的DAO(Data Access Object)类,了解如何封装SQL语句,以及如何通过面向对象的方式处理数据库操作。同时,表单验证和数据...

    PHP实例开发源码-PHP ACCESS 简单留言本.zip

    PHP通过ODBC(Open Database Connectivity)或者更现代的PDO(PHP Data Objects)扩展与ACCESS数据库进行通信,执行SQL语句,实现数据的CRUD(创建、读取、更新和删除)操作。 在实现过程中,这个简单的留言本系统...

    php 工作流源码

    6. 数据持久化:数据库操作是必不可少的,源码可能使用了ORM(对象关系映射)工具,如ThinkPHP自带的ActiveRecord,简化数据库操作。 7. 错误处理和异常捕获:为了保证系统的稳定运行,源码应该包含良好的错误处理...

    ASP+ACCESS源码:21百合婚恋交友网站程序.zip源码PHP项目源代码下载

    ASP+ACCESS源码:21百合婚恋交友网站程序.zip源码PHP项目源代码下载ASP+ACCESS源码:21百合婚恋交友网站程序.zip源码PHP项目源代码下载 1.适合个人搭建网站项目参考 2.适合学生毕业设计搭建网站参考 3.适合小公司...

Global site tag (gtag.js) - Google Analytics