导航:首页 > 编程语言 > phpmdb下载

phpmdb下载

发布时间:2023-05-10 02:26:06

php入门基础教程

PHP入门基础教程大全

PHP于1994年由Rasmus Lerdorf创建,刚刚开始是Rasmus Lerdorf为了要维护个人网页而制作的一个简单的用Perl语言编写的程序。这些工具程序用来显示 Rasmus Lerdorf 的个人履历,以及统计网页流量。后来又用C语言重新编写,包括可以访问数据库。他将这些程序和一些表单直译器整合起来,称为 PHP/FI。PHP/FI 可以和数据库连接,产生简单的动态网页程序。为帮助大家入门学习php,我为大家分享PHP入门知识教程如下:

1、嵌入方法:

类似ASP的<%,PHP可以是<?php或者是<?,结束符号是?>,当然您也可以自己指定。

2、引用文件:

引用文件的方法有两种:require 及 include。

require 的使用方法如 require("MyRequireFile.php"); 。这个函数通常放在 PHP 程序的最前面,PHP 程序在执行前,就会先读入 require 所指定引入的文件,使它变成 PHP 程序网页的一部份。常用的函数,亦可以这个方法将它引入网页中。

include 使用方法如 include("MyIncludeFile.php"); 。这个函数一般是放在流程控制的处理部分中。PHP 程序网页在读到 include 的文件时,才将它读进来。这种方式,可以把程序执行时的流程简单化。

3、注释方法:

<?php

echo "这是第一种例子。 " ; // 本例是 C++ 语法的注释 (PHP的注释跟C差不多!)

/* 本例采用多行的

注释方式 */

echo "这是第二种例子。 " ;

echo "这是第三种例子。 " ; # 本例使用 UNIX Shell 语法注释

?>

4、变量类型:

$mystring = "我是字符串" ;

$NewLine = "换行了 " ;

$int1 = 38 ;

$float1 = 1.732 ;

$float2 = 1.4E+2 ;

$MyArray1 = array( "子" , "丑" , "寅" , "卯" );

这里引出两个问题,首先PHP变量以$开头,第二PHP语句以;结尾,可能ASP程序员会不适应。这两个遗漏也是程序上大多错误所在。

5、运算符号:

数**非法字眼已被屏蔽**算:

符号 意义

+ 加法运算

- 减法运算

* 乘法运算

/ 除法运算

% 取余数

++ 累加

-- 递减

字符串运算:

运算符号只有一个,就是英文的句号。它可以将字符串连接起来,变成合并的新字符串。类似ASP中的&

<?

$a = "PHP 4" ;

$b = "功能强大" ;

echo $a.$b;

?>

这里也引出两个问题,首先PHP中输出语句是echo,第二类似ASP中的<%=变量%>,PHP中也可以<?=变量?>。

逻辑运算:

符号 意义

< 小于

> 大于

<= 小于或等于

>= 大于或等于

== 等于

!= 不等于

&& 而且 (And)

and 而且 (And)

或者 (Or)

or 或者 (Or)

xor 异或 (Xor)

! 不 (Not)

学习目的:掌握php的流程控制

1、if..else 循环有三种结构

第一种是只有用到 if 条件,当作单纯的判断。解释成 "若发生了某事则怎样处理"。语法如下:

if (expr) { statement }

其中的 expr 为判断的条件,通常都是用逻辑运算符号当判断的条件。而 statement 为符合条件的执行部分程序,若程序只有一行,可以省略大括号 {}。

范例:本例省略大括号。

<?php

if ($state==1)echo "哈哈" ;

?>

这里特别注意的是,判断是否相等是==而不是=,ASP程序员可能常犯这个错误,= 是赋值。

范例:本例的执行部分有三行,不可省略大括号。

<?php

if ($state==1) {

echo "哈哈 ;

echo "<br>" ;

}

?>

第两种是除了 if 之外,加上了 else 的条件,可解释成 "若发生了某事则怎样处理,否则该如何解决"。语法如下

if (expr) { statement1 } else { statement2 } 范例:上面的例子来修改成更完整的处理。其中的 else 由于只有一行执行的指令,因此不用加上大括号。

<?php

if ($state==1) {

echo "哈哈" ;

echo "<br>";

}

else{

echo "呵呵";

echo "<br>";

}

?>

第三种就是递归的 if..else 循环,通常用在多种决策判断时。它将数个 if..else 拿来合并运用处理。

直接看下面的例子

<?php

if ( $a > $b ) {

echo "a 比 b 大" ;

} elseif ( $a == $b ) {

echo "a 等于 b" ;

} else {

echo "a 比 b 小" ;

}

?>

上例只用二层的 if..else 循环,用来比较 a 和 b 两个变量。实际要使用这种递归 if..else 循环时,请小心使用,因为太多层的循环容易使设计的逻辑出问题,或者少打了大括号等,都会造成程序出现莫名其妙的问题。

2、 for 循环就单纯只有一种,没有变化,它的语法如下

for (expr1; expr2; expr3) { statement }

其中的 expr1 为条件的`初始值。expr2 为判断的条件,通常都是用逻辑运算符号 (logical operators) 当判断的条件。expr3 为执行 statement 后要执行的部份,用来改变条件,供下次的循环判断,如加一..等等。而 statement 为符合条件的执行部分程序,若程序只有一行,可以省略大括号 {}。

下例是用 for 循环写的的例子。

<?php

for ( $i = 1 ; $i <= 10 ; $i ++) {

echo "这是第".$i."次循环<br>" ;

}

?>

3、 switch 循环,通常处理复合式的条件判断,每个子条件,都是 case 指令部分。在实作上若使用许多类似的 if 指令,可以将它综合成 switch 循环。

语法如下

switch (expr) { case expr1: statement1; break; case expr2: statement2; break; default: statementN; break; }

其中的 expr 条件,通常为变量名称。而 case 后的 exprN,通常表示变量值。冒号后则为符合该条件要执行的部分。注意要用 break 跳离循环。

<?php

switch ( date ( "D" )) {

case "Mon" :

echo "今天星期一" ;

break;

case "Tue" :

echo "今天星期二" ;

break;

case "Wed" :

echo "今天星期三" ;

break;

case "Thu" :

echo "今天星期四" ;

break;

case "Fri" :

echo "今天星期五" ;

break;

default:

echo "今天放假" ;

break;

}

?>

这里需要注意的是break;别遗漏了,default,省略是可以的。

很明显的,上述的例子用 if 循环就很麻烦了。当然在设计时,要将出现机率最大的条件放在最前面,最少出现的条件放在最后面,可以增加程序的执行效率。上例由于每天出现的机率相同,所以不用注意条件的顺序。

学会构建数据库

在PHP中,MY SQL的命令行编辑可能会令初学者感到很麻烦,不要紧,你下载一个PHPMYADMIN安装一下,以后建立编辑数据库可以靠它了。

下面说一下它的使用。

进入了phpmyadmin后,我们首先需要建立一个数据库,

Language (*) 这里选择中文简体,然后在左边的 创建一个新的数据库 这里填写数据库名字,点击创建即可。

然后在左边下拉菜单中选择那个已经创建的数据库。在下面的

在数据库 shop 中创建一个新表 :

名字 :

字段数 :

中填写表名字和大致你认为的字段数(不够或者多了都不要紧,以后可以再添加或者缺省),按执行。

然后就可以开始建立表了。

第一栏是字段的名字;第二栏选择字段类型:

我们常用的是以下几个:

1)VARCHAR,文本类型

2)INT,整数类型

3)FLOAT,浮点数类型

4)DATE,日期型

5)大家或许会问,自动添加的ID在哪里?这个只要选择INT类型,在后面的额外中选择 auto_increment 就可以了。

建立了表以后,可以在左边看到你建立的表,点击以后,你可以:

1)按右边的结构:查看修改表结构

2)按右边的浏览:查看表中的数据

3)按右边的SQL:运行SQL语句

4)按右边的插入:插入一行记录

5)按右边的清空:删除表中所有记录

6)按右边的删除:删除表

还有一个很重要的功能就是导入和导出,当我们本机做好了程序和数据库的时候,需要在服务器上也有一个本地镜像,如果是ASP的ACCESS简单了,直接上传MDB文件即可,如果是SQL SERVER也可以连接远端服务器进行导入。那么MY SQL中你可以导出所有的SQL语句,到了远端服务器的PHPMYADMIN上,创建数据库后按SQL,粘帖你刚才复制下来的所有本级生成的SQL语句即可。

学会连接数据库

PHP简直就是一个函数库,丰富的函数使PHP的某些地方相当简单。建议大家down一本PHP的函数手册,总用的到。

我这里就简单说一下连接MYSQL数据库。

1、mysql_connect

打开 MySQL 服务器连接。

语法: int mysql_connect(string [hostname] [:port], string [username], string [password]); 返回值: 整数

本函数建立与 MySQL 服务器的连接。其中所有的参数都可省略。当使用本函数却不加任何参数时,参数 hostname 的默认值为 localhost、参数 username 的默认值为 PHP 执行行程的拥有者、参数 password 则为空字符串 (即没有密码)。而参数 hostname 后面可以加冒号与端口号,代表使用哪个端口与 MySQL 连接。当然在使用数据库时,早点使用 mysql_close() 将连接关掉可以节省资源。

2、 mysql_select_db

选择一个数据库。

语法: int mysql_select_db(string database_name, int [link_identifier]); 返回值: 整数

本函数选择 MySQL 服务器中的数据库以供之后的资料查询作业 (query) 处理。成功返回 true,失败则返回 false。

最简单的例子就是:

$conn=mysql_connect ("127.0.0.1", "", "");

mysql_select_db("shop");

连接机MY SQL数据库,打开SHOP数据库。在实际应用中应当加强点错误判断。

学会读取数据

先看两个函数:

1、mysql_query

送出一个 query 字符串。 语法: int mysql_query(string query, int [link_identifier]); 返回值: 整数

本函数送出 query 字符串供 MySQL 做相关的处理或者执行。若没有指定 link_identifier 参数,则程序会自动寻找最近打开的 ID。当 query 查询字符串是 UPDATE、INSERT 及 DELETE 时,返回的可能是 true 或者 false;查询的字符串是 SELECT 则返回新的 ID 值,当返回 false 时,并不是执行成功但无返回值,而是查询的字符串有错误。

2、mysql_fetch_object 返回类资料。 语法: object mysql_fetch_object(int result, int [result_typ]); 返回值: 类

本函数用来将查询结果 result 拆到类变量中。若 result 没有资料,则返回 false 值。

看一个简单的例子:

<?

$exec="select * from user";

$result=mysql_query($exec);

while($rs=mysql_fetch_object($result))

{

echo "username:".$rs->username."<br>";

}

?>

当然,表user中有一个username的字段,这就类似asp中的

<%

exec="select * from user"

set rs=server.createobject("adodb.recordset")

rs.open exec,conn,1,1

do while not rs.eof

response.write "username:"&rs("username")&"<br>"

rs.movenext

loop

%>

当然先要连接数据库,一般我们 require_once('conn.php');而conn.php里面就是上一次说的连接数据库的代码。

小小的两条命令可以完成读取数据的工作了

学会添加删除修改数据

mysql_query($exec);

单这个语句就可以执行所有的操作了,不同的就是$exec这个sql语句

添加:$exec="insert into tablename (item1,item2) values ('".$_POST['item1']."',".$_POST['item1'].")";

删除:$exec="delete from tablename where...";

修改:$exec="update tablename set item1='".$_POST['item1']."' where ...";

说到这里就要说一下表单和php变量传递,如果表单中的一个 <input name="item1" type="text" id="item1">

表单以POST提交的,那么处理表单文件就可以用$_POST['item1']得到变量值,同样以GET提交的就是$_GET['item1']

是不是很简单?但是通常$exec会有问题,因为可能您的SQL语句会很长,您会遗漏.连接符,或者'来包围字符型字段。

我们可以注释mysql_query($exec);语句用echo $exec;代替来输出$exec以检查正确性。如果您还不能察觉$exec有什么错误的话,可以复制这个sql语句到phpmyadmin中执行,看看它的出错信息。还有需要注意的是,我们不要使用一些敏感的字符串作为字段名字,否则很可能会出现问题,比如说date什么的。变量的命名,字段的命名遵循一点规律有的时候对自己是一种好处,初学者并不可忽视其重要性。

学会SESSION的使用

SESSION的作用很多,最多用的就是站点内页面间变量传递。

在页面开始我们要session_start();开启SESSION;

然后就可以使用SESSION变量了,比如说要赋值就是:$_SESSION['item']="item1";要得到值就是$item1=$_SESSION['item'];,很简单吧。这里我们可能会使用到一些函数,比如说判断是不是某SESSION变量为空,可以这么写:empty($_SESSION['inum'])返回true or false。

下面综合一下前面所说的我们来看一个登陆程序,判断用户名密码是否正确。

登陆表单是这样:login.php

<table width="100%" height="100%" border="0" align="center" cellpadding="0" cellspacing="0">

<tr>

<form action="checklogin.php" method="post"><td align="center" valign="middle"><table width="400" border="0" cellpadding="5" cellspacing="1" class="tablebg">

<tr class="tdbg">

<td colspan="2"><p align="center">Administrators Login</p></td>

</tr>

<tr class="tdbg">

<td><p align="center">Username</p></td>

<td><p align="center">

<input name="username" type="text" id="username">

</p></td>

</tr>

<tr class="tdbg">

<td><p align="center">Password</p></td>

<td><p align="center">

<input name="password" type="password" id="password">

</p></td>

</tr>

<tr class="tdbg">

<td colspan="2"><p align="center">

<input type="submit" name="Submit" value="Submit">

<input type="reset" name="Submit2" value="Clear">

</p></td>

</tr>

</table></td></form>

</tr>

</table>

处理文件是这样

<?php

require_once('conn.php');

session_start();

$username=$_POST['username'];

$password=$_POST['password'];

$exec="select * from admin where username='".$username."'";

if($result=mysql_query($exec))

{

if($rs=mysql_fetch_object($result))

{

if($rs->password==$password)

{

$_SESSION['adminname']=$username;

header("location:index.php");

}

else

{

echo "<script>alert('Password Check Error!');location.href='login.php';</script>";

}

}

else

{

echo "<script>alert('Username Check Error!');location.href='login.php';</script>";

}

}

else

{

echo "<script>alert('Database Connection Error!');location.href='login.php';</script>";

}

?>

conn.php是这样:

<?php

$conn=mysql_connect ("127.0.0.1", "", "");

mysql_select_db("shop");

?>

由于 $_SESSION['adminname']=$username;我们可以这样写验证是否登陆语句的文件:checkadmin.php

<?php

session_start();

if($_SESSION['adminname']=='')

{

echo "<script>alert('Please Login First');location.href='login.php';</script>";

}

?>

做一个分页显示

关键就是用到了SQL语句中的limit来限定显示的记录从几到几。我们需要一个记录当前页的变量$page,还需要总共的记录数$num

对于$page如果没有我们就让它=0,如果有<0就让它也=0,如果超过了总的页数就让他=总的页数。

$execc="select count(*) from tablename ";

$resultc=mysql_query($execc);

$rsc=mysql_fetch_array($resultc);

$num=$rsc[0];

这样可以得到记录总数

ceil($num/10))如果一页10记录的话,这个就是总的页数

所以可以这么写

if(empty($_GET['page']))

{

$page=0;

}

else

{

$page=$_GET['page'];

if($page<0)$page=0;

if($page>=ceil($num/10))$page=ceil($num/10)-1;//因为page是从0开始的,所以要-1

}

这样$exec可以这么写 $exec="select * from tablename limit ".($page*10).",10";

//一页是10记录的

最后我们需要做的就是几个连接:

<a href="xxx.php?page=0">FirstPage</a>

<a href="xxx.php?page=<?=($page-1)?>">PrevPage</a>

<a href="xxx.php?page=<?=($page+1)?>">NextPage</a>

<a href="xxx.php?page=<?=ceil($num/10)-1?>">LastPage</a>

注意事项

1、注意不要漏了分号

2、注意不要漏了变量前的$

3、使用SESSION的时候注意不要遗漏session_start();

如果发生错误的时候,可以采用以下方法:

1、如果是SQL语句出错,就注释了然后输出SQL语句,注意也要注释调后续的执行SQL语句

2、如果是变量为空,大多是没有传递到位,输出变量检查一下,检查一下表单的id和name

3、如果是数据库连接出错,检查是否正确打开MY SQL和是否遗漏了连接语句

4、注意缩进,排除括号不区配的错误

在做大网站的时候,我的思路是先构建数据库,确定每一个字段的作用,和表之间的关系。然后设计后台界面,从添加数据开始做起,因为添加是否成功可以直接到数据库里面验证,做好了添加再做显示的页面,最后才是两者的结合。一般来说后台就包括添加删除修改和显示,后台没有问题了,前台也没有什么大问题。前台还需要注意安全性和容错还有就是输出格式。

学会用PHP上传文件和发邮件

上传文件表单必须加上 enctype="multipart/form-data"

和 <input type="file" name="file">

下面看一下代码:

$f=&$HTTP_POST_FILES['file'];

$dest_dir='uploads';//设定上传目录

$dest=$dest_dir.'/'.date("ymd")."_".$f['name'];//我这里设置文件名为日期加上文件名避免重复

$r=move_uploaded_file($f['tmp_name'],$dest);

chmod($dest, 0755);//设定上传的文件的属性

上传的文件名为date("ymd")."_".$f['name'] ,可以在以后插入到数据库的时候用到,PHP实际上是把你上传的文件从临时目录移动到指定目录。move_uploaded_file($f['tmp_name'],$dest);这是关键

至于发邮件就更加简单,可以使用mail()函数

mail("收件人地址","主题","正文","From:发件人 Reply-to:发件人的地址");

不过mail()需要服务器的支持,在WINDOWS下还需要配置SMTP服务器,一般来说外面的LINUX空间都行。

好像上传文件和发邮件比ASP简单很多,只要调用函数就可以了。ASP还需要用到服务器的不同组件比如FSO、JMAIL什么的。

;

⑵ php header 下载zip文件的问题

<?php
include("class.php");
date_default_timezone_set("PRC");//设置时区为中国
$filetype_array = array("as"=>"Flash ActionScript File","bmp"=>"BMP图像"
,"doc"=>"Microsoft Word文档","rar"=>"WinRAR 压缩文档",
"ppt"=>"Microsoft PowerPoint 演示文稿","txt"=>"文本文档",
"xls"=>"Microsoft Excel 工作表","gif"=>"GIF图像",
"jpg"=>"JPEG图像","jpeg"=>"JPEG图像","png"=>"PNG图像",
"html"=>"HTML Document","htm"=>"HTML Document",
"mp3"=>"MP3 格式声音","chm"=>"已编译的HTML帮助文件",
"fla"=>"Flash Document","mdb"=>"Microsoft Access 应用程序",
"pdf"=>"PDF 文件","swf"=>"Flash Movie","xml"=>"XML 文档",
"zip"=>"WinRAR ZIP 压缩文件","asf"=>"Windows 音频/视频文件",
"wmv"=>"Windows Media 音频/视频文件","avi"=>"视频剪辑",
"mpeg"=>"电影剪辑","exe"=>"应用程序","gz"=>"WinRAR 压缩文件",
"tar"=>"WinRAR 压缩文件","tiff"=>"TIFF 文件");

//以上为判断函数
$="./images";
$nba=opendir($);
$i=1;
echo "<table border=1px color:red>";
echo "<tr><td>I D</td><td>文件名称</td><td>大小</td><td>最后修改时间</td><td>类型</td><td>下载</td></tr>";
while ($wnba=readdir($nba))
{

if($wnba != "." && $wnba != "..")

{
$path=$."/".$wnba;
$dir=new dir($path);
$str[]=
"<tr>".
"<td>".$i++."</td>".
"<td>".$wnba."</td>".
"<td>".$dir->getsize()."</td>".
"<td>".$dir->gettime()."</td>".
"<td>".$dir->gettype()."</td>".
"<td><a href='$path'><img src=".$dir->getIcon()."></a></td>".
"</tr>\n";

}
$lines=15;//每页15行
if( " "==$cur_page) $cur_page=1;//当前页
$page=ceil(count($str)/$lines);//页数
echo $page;
for($i=($cur_page-1)*$lines ; $i <$cur_page*$lines ; $i++){//分段读出数组
echo "$str[$i] ";
}

}
echo "</table>";
closedir($nba);

?>
<table width=100%> <tr> <td align=center>
<?
for ($i=1;$i <=$page;$i++){
$i==$cur_page ? $a= " <b> ".$i. " </b> " : $a= " <a href= ".wjclass1.php. "?cur_page=$i> ".$i. " </a> ";
echo "$a ";
}
?>
</td> </tr> </table>
</td>
</tr>
</table>

⑶ 后缀为PHP的文件如何打开

*.php是一种网络开发的程序,它在服务器端运行,也就是你如果想打开此文件(以网页的形式),必须为他配一台服务器或者安装一个基于本机的服务性质的软件!

*.php是一种网络开发的程序,它在服务器端运行,也就是你如果想打开此文件(以网页的形式),必须为他配一台服务器或者安装一个基于本机的服务性质的软件,不过你可以使用写字板之内的东西打开他,此时你看到的是源程序,如果是在网上下载的php的话,他已经在服务器端运行,你只能看到结果!即我们常见的超文本html。

后缀名大全
A:
1 .ace: ace.exe或winace生成的压缩文件
2 .ain: ain是一种压缩文件格式,解开ain需要用ain.exe。在网上可以找到。
可以在各大的FTP pub/msdos utility之类地方寻找ain.exe
3 .arj,a01,a02...:
arj是一种非常常见的压缩文件格式,它可以支持带目录,多文件压缩,
一般FTP中DOSutility目录下都可以找到arj.exe,一般的版本有2.4
2,2.382.50等,其文件格式是通用的,不存在格式不认问题。
a01,a02,a03是arj在多文件压缩时后面文件的缺省文件名。
展开arj文件可以用arj x -va -y filename.arj
在windows下可以试试用winzip展开。
4 .asp:
.asp文件通常指的是Active Server Pages文件,这个文本文件可以
包括下列部分的任意组合:文本/HTML 标记/ASP 脚本命令,可以用
ie浏览器直接打开,也可以用记事本打开编辑。
.asp文件也可能是一种文档格式的文件,可以用cajviewer打开。
5 .avi:
一般用windows自带的媒体播放器就可以播放。
如果没有图象只有声音,则可能是mpeg4格式,需要装插件。
如果有单独的字幕文件,则可以用其它播放器。
B:
1 .BHX(BINHEX):
BinHex是苹果机器的一种编码方式.
WinZip可以解码. 将email以文本方式存盘,扩展名为.BHX,
就可以直接用WinZip解压了.
2. .bin
光盘映象文件,可以:
a.用Bin2ISO将bin转成ISO文件,然后用WinImage解开.
注意:有些BIN文件实际上就是ISO文件如果上面的办法有问题
可以直接将后缀改成iso,然后用WinImage解解看
b.用ISOBuster直接解BIN.
c.用daemon直接将BIN文件虚拟成光驱
C:
1 .caj: cajviewer,CAJ文件浏览器是中国学术期刊(光盘版)电子杂志社(CAJEJPH)
的产品。它是为中国期刊网(www.chinajournal.net.cn)的全文检索,浏览开发的。
2 .cdi: 光盘映像文件,用DISKJuggle 就可以打开
3 .cdr: CorelDraw
4 .cdp: Nti CdMaker做的光盘Image.用 Nti CdMaker 的FileCopy刻.
5 .cfm:
www浏览器(服务器支持,类似asp,php,jsp) or 文本编辑器看源码
6 .chi:chm(html help)的索引,和chm文件一起使用
7 .chm:
基于Html文件格式的帮助文档,在IE4.0以上可以双击直接打开。
制作工具可以采用Html Help WorkShop。
8 .cif:是easy cd creator地image文件
9 .cpj:
WinONCD的工程文件,不过如果那个Raw文件是2072字节的扇区的话就是标准的ISO文件
换个扩展名,用什么刻录软件都可以,最差用WinImage直接展开安装也行。
10 .cpx: cpx是一种压缩过的矢量图格式,CorelDraw
D:
1 .dat:
一般指数据文件,比如某些音碟或者某些应用程序的数据。
是个很通用的扩展名(比如影碟,一般数据,......),无法判断用那个程序打开,
除非有更多信息,比如这些文件是做什么用的。
是某个软件附带的,还是独立存在的,等等。
2 .dbf:
DOS下:
foxbase
foxpro
DN 中F3(view)
Windows:
qview(快速查看)
FoxPro
Office中Excel等.
3 .ddi: DISKDUPE,unimg,unddi,undisk
4 .dvi: Latex处理过的文件,用任何一种Latex软件都可看它。
5 .dxf: AutoCad,3DMax
6 .dxr: Macromedia Director Protected Movie File
E:
1 .ecw: 有可能是ENSONIQ AudioPCI声卡的波表样本
2 .emf: 扩展的wmf文件
3 .eml: outlook express
4 .eps:
eps是一种特殊的ps文件, 通常是嵌入其他文档中使用. 制作这种文件非常简单:
a) 在Windows中安装一台PostScript打印机(并不是真的要买一台, 仅仅是安装驱动
程序), 例如 HP LaserJet 5P/5MP PostScript, 设置其属性中的PostScript输出格式为
内嵌的PostScript, 打印端口设为FILE(在磁盘上创建文件);
b) 在任何绘图软件中编辑好图形后, 在打印对话框中将打印机设为那个PostScript
打印机, 然后打印到文件, 文件名可取为xxx.eps, 这将是你所需要的eps文件.
很多常用软件,比如ACDSee、Word等都可打开eps文件。
F:
1 .fcd:用vitrul CD-ROM打开
2 .fla: Flash
G:
1 gerber file(.dat .rep .pho 文件): 电路图可以送去制板的
2 .gif: gif是一种很普遍的图像格式,用几乎所有的图像处理软件都可以处理gif。
3 .gtp:guitar pro
.gtp是2.2以下版本的,3.0版本的是.gp3
H:
1 .hlp: 编辑可用help magic,help scribe
2 .hqx:
hqx格式就是所谓的Binhex 4.0文件。
实际是Ascii文件。
在PC上可以用winzip 6.2以上解开。
在Mac机上,如果你用Fetch 2.0以上来传
(在随机的Apple Internet Connect Kit上已带)
可以自动转成原来的Binary文件。
一般来说,你down了hqx格式的文件在PC上是派不上
什么用场的,当然你可以用来和别人交换word文件什么的。
I:
1 .icl:Icon Library,用AxIcons打开,一个专用的画图标的软件。
2 .ic图标文件,可以用acdsee转成bmp文件。
3 .idx:cterm非常下载下来的文件索引,用cterm自带的indexread打开
4 .iges:iges是一个基于NURBS的文件格式, 可以用AutoCad打开,如果不行,可以可以先拿到rhino中转成DXF
5 .img:
img是软盘image文件,一个img就是一个软盘,尼需要一个工具将这样
的文件展开还原到软盘上,就是hd-,
6 .is
一般是光盘镜像,直接用来刻盘或者用winimage解开
也可以装一个虚拟光盘软件daemon直接将之虚拟成光盘。
J:
1、.jpg,.jpeg:
.jpg是一种高压缩比的真彩图像文件格式,一般的图像处理软件都可以
显示jpg图像。推荐使用的看jpg程序有:在DOS下sea,在windows下用
acdsee,在UNIX下可以用xv来看jpg。
K:
1、.kc:
可以用king打开。
L:
1 .lwp: Lotus WordPro 格式
2 .lrc: 一个winamp插件的歌词文件,可以在放mp3时显示歌词。以前叫lrics mate
3 .lzh:
lzh是很老的一种压缩文件格式,近几年已经很少用了,展开lzh
文件需要lha.exe,在FTP的DOS utility目录下应该有。
好象以前有一种自解压然后运行的exe是用lha压的,lzh用winrar就能解
4 .ldb
Access数据库锁定文件,纪录数据库的锁定信息,
比如是否被打开,是否以独占形式访问等等。
M:1 .max: 3DMax文件。
2 .mdb: Microsoft Access数据库文件
3 .mdl: Rose文件
4 .mif:一种是MaxPlusII的文件
5 .mov:电影文件,用Quicktime打开。
6 .mpp:Project File(Ms Project)
7 .msf:
part 1:文件头,我见到的几个都是mstor打头的,文件头包括版本信息、注册表
的一些键值、图片的位置信息等等,关系不是很大,不必仔细研究。
part 2: 图片序列,图片都是jpeg格式的,每张图片的头可以通过查找"JFIF"字符串查到,查到后一定要后退六个字节,才是真正的jpeg文件头。也就是说
jpeg文件的第七到第十个字节是"JFIF"。每两张图片之间会有大量的字节
填充0,中间你会找到屏保运行时产生的临时文件的名字,如c:\\1.jpg;
由于jpg文件不校验字节和长度的,你可以随便取到临时文件名上面的哪个
0 上。把之间的部分拷贝出来另存为.jpg文件就可以了,
part 3:图片都取出来了,还管它干什么,呵呵
7 .msi:
MS Windows的新的安装文件标准。已经在Office2000和Windows2000中采用。
98或NT下,可以装下面的软件:InstMsi9x.exe,InstMsiNT.exe
N:
1 .nb:Mathematica的一种文件格式把。
2 .nf
察看方法:
1.文本编辑器都可以看。建议将自动换行设为80列。
专门的查看软件:
NFOShow1.1是网友写的,实际效果是我见过最好的,不过有时时会出错退出。DAMN.NFO.Viewer.v2.0只有几十k,很好用,足够了。还可以在dos窗口下type xx.nfo
3 .ngp,.ngc:
是模拟器游戏的文件neopocott 0.35b(ngp模拟器)ngp模拟器neopocott升级到
了v0.35b版本,可在win9x, 2k, me平台上运行。新版本暂停功能得到修改,支持
了ngc的扩展名文件,可以更好的存储和读取文件,增加了对键盘的设置等等
4 .njx: 南极星的字处理软件的文档格式
5 .nrg:Nero做的CD Image,用nero直接打开刻盘即可
1 .opx: Microsoft 组织结构图,用office自带的组件可以打开,
默认不安装,需要添加程序。
P:
1 .pdf:
pdf是adobe公司开发的一种类似于poscript的文件格式。可以用
adobe的acrobat,arcrbat reader来编辑,打开pdf文件
2 .pdg:超星阅读器SSreader3.52以上版本
3 .phtml:cajviewer
4 .pl: 一般说来是PERL Script,也可能是mp3播放软件的playlist文件
5 .ppt .pps:PowerPoint
6、prn:
prn文件是打印机文件,比如你在Word中选择"打印到文件"就会生成这种文件。
你可以把扩展名改为ps,然后用GSView打开。
或者用PrFile这个软件直接把prn文件送到PS打印机打印出来。
7 .ps:
ps的意思是PostScript,这是一种页面描述语言,主要用于高质量打印。
在UNIX和windows下都可以用GhostView来看ps文件。其homepage是
http://www.cs.wisc.e/~ghost/gsview/new23.html
如果你有PoscriptScript支持的打印机,可以直接打印PS文件。
如果你想制做PS文件,简单的办法是:在Windows下安装一个支持Post Script
的打印机驱动程序,比如HP 4 PS,你不需用非有这个打印机安装在你的机器上。安装好
驱动之后,在WIndows下任何一个编辑器中编辑好你需要转成PS的文件,比如从
Word下。然后选择"打印",选择那个PS兼容的驱动程序,然后选择"print to file",
它将把打印输出送到一个文件中去。因为你用了一个Poscript 的打印驱动程序,
那么这个打印文件就是PostScript文件了。将该文件改名字为XXX.ps就可以了。
8 .ps.gz:
gzipped postsript 文件,可以用gsview直接打开,其支持gzip
如果是用IE下载的,有可能实际已经解开,可以去掉gz后缀试试。
9 .psz: 改成*.ps.gz试试,然后用gzip或者winzip解开就是.ps文件了
10 .psf: outline PostScript printer font (ChiWriter)
11 .ptl: AUTOCAD做出来的打印文件
Q:
R:
1、.rar,.r01,r02......:
rar是一种压缩文件格式,在DOS下解开RAR可以用rar.exe,在各大FTP
里面都可以找到,一般在pub/msdosutility之类地方。需要注意的是rar
高版本压缩的文件低版本不认。当前最新的rar for DOS是2.X版,如果
能找到2.x版的话最好不要用1.X板的rar,2版的rar文件相互是通用的。
rar的命令行参数几乎和arj一样,rar x -v -y filename.rar
可以展开文件,包括带目录和多文件压缩。
rar多文件压缩时rar之后的文件名是r00,r01,r02....
DOS下的软件不支持长文件名,所以如果你的rar里面有长文件名并且因为
在DOS下展开丢失了得话,可以试试winrar for win95,支持长文件名。
在各大ftp上应该也可以找到。其所有版本都可以认rar2.X得文件。
2、.raw:
是easy cd或者winoncd等软件做的CDROM的ISO镜像
RAW属于MODE1的
3、.raw:
可用Photoshop看。
4、.rom:
是很小的音乐压缩格式,使用realplayer可以播放。
5、.rom:
是模拟器的文件吧。
6、.rpm:
RPM 是Redhat Package Manager 的简写。
是Linux 底下的软件包管理系统。
到Linux 底下用使用rpm 来对它进行操作。
7、.rm:
RM文件是一个包含了RA文件URL地址的文件,作用就同M3L与MP3一样,用于
REALPLAYER在INTERNET上播放RA流。
8、.rmx:
可以用realplayer 打开。
9、.rtf:
rich text format
包含格式的文本,可用于各种编辑器间交换文件,但是体积要比专用格式大很多。 可以用word,写字板打开,一般的支持格式的编辑器都能打开。
S:
1、.sfe:file split 分割文件。
用file split 可以把他们合并成原来的zip文件。
或许还有自动合并得bat文件呢。
2、.sfv:
不是文件分割器产生的,是sfv32w产生的,一般用来做windows下的文件校验。
3、.shar:
Shell Archive, 文本格式的打包文件,类似tar, 不过tar生成的为binary file,在UNIX下sh < *.shar 即可解包, 或用专门的 shar/unshar utilities。
4、.shg:
是microsoft的help workshop的图形处理工具生成的图形文件,
是用来在help中调用的。
5、.sit:
Macintosh Stuffit archives,
as well as UUE (uuencoded), HQX (BinHex), bin (MacBinary), ZIP, ARC,
ARJ, and GZ archives
use "Aladdin Expander" to expand
6、.srm:
呵呵,当然是用Kiven电子书库了.你可以去化云坊down 3.0.12的版本,也可以去http://kiven.yeah.net kiven的主页上当最新版.还有源码的呦.
7、.stx:
Syntax file of Edit Plus
8、:
是Flash的动画格式,如果浏览器装了插件,可以用浏览器打开,但最好用
Flash Player Browser打开。
9、.swp:
Scientific Word Place
10、.spw
SigmaPlot Worksheet
http://www.spssscience.com/sigmaplot
T:
1、.tar.GZ or .tar:
.tar.gz,或者.tgz的文件一般是在UNIX下用tar和gunzip压缩的文件。
可能的文件名还有.tar.GZ等。gunzip是一种比pkzip压缩比高的压缩 程序,一般UNIX下都有。tar是一个多文件目录打包器,一般也是在unix下。
在UNIX下展开.tar.gz文件用tar zxvf filename.tar.gz就可以了 或者用gunzip -d filename.tar.gz得到filename.tar 然后用tar xvf filename.tar解包,两步完成。
在PC环境下解tgz,可以用winzip 6.2以上版本,可以直接打开extract。
建议在win95或者NT下使用winzip,因为很多这样的文件都是在UNIX下压缩的,
很可能有长文件名,但是WIndows3.1是不支持长文件名的,however,win31下的winzip 也是应当可以展开tgz的。
2、.tar.Z:
.Z的文件一般是在UNIX下用compress命令压缩的。在UNIX下解开可以用 uncompress filename.Z。在PC下可以用winzip6.2以上版本,建议使用
win95版本的winzip,因为win31不支持长文件名,而UNIX下的文件很
可能是长文件名。但win31下winzip应该也可以解开。
如果是.tar.Z的文件的话可以用uncompress先解开外面一层,然后用
tar xvf filename.tar解开tar文件。在PC下还是用winzip。
3、.tex:
.tex本身是个文本文件,必须经过编译成dvi文件,使用winLatex就可以,如果你有 unix当然会带TeX或LaTex的。
U:
1、.ufo:
问:这种文件要用什么程序打开?quick view plus 可以吗?
答1:使用photoimpact应该可以.
答2:通常是漫画,可以用冷雨浏览来看.
答3:找ufo2jpg.exe可以将ufo文件变成熟悉的JPG
2、.uu,.uue:
.uu是uucode的文件。uucode是一种把8bit文件转成7bit的算法
我们知道,exe文件或者其他二进制文件是不可以直接用email
发出去的。uucode可以把这些文件转成7bit格式,就是普通文本文件格式
(如下面的样子),然后就可以被接收方还原。
begin 640 pass
M("$Y-2V]R<5!1=UI!.C`Z,#I3=7!E`@<F]O=#IB>$Y-2V]R<5!1=UI!.C`Z,#I3=7!E<BU5<V5R.B\\Z+V)I;B]C
M<V@@<WES861M.BHZ,#HP.E-Y<W1E;2!6"B`@(&=U97-T.F-U-&I)=&M%9&HN
M:S(Z.3DX.CDY.#I\'=65S="!!8V-O=6YT.B]U<W(O<&5O<&QE+V=U97-T.B]B
如果你收到一个email是uucode做的,可以把它存成一个文件,将begin 640..
之前的部分删除,然后改文件名为.uu,然后用uudecode解开。
在windows下可以用winzip6.2以上版本。
V:
1、.vcd:
一般是virtual driver的虚拟光驱文件
也可以转换成iso,用daemon打开,参见格式转换,.vcd->.iso
另外金山影霸的文件也可能是vcd。
2、.vcf:
是地址本文件,用outlook express可以打开,(双击就可以)。
3、.vob:
DVD数据文件
4、.vos:
VOS 是一款强大的电子琴模拟软件,.vos文件可以用它打开。
5、.vqf:
用Winamp播放,需要装相应的插件。
备注:VQF是YAMAHA公司和日本NTT公司联合开发的一种新音乐格式,它的压缩比比MP3更高,音质却与MP3不相上下,而它之所以没有MP3那般出尽风头,大概与其推出时间较迟以及缺和相应的广告宣传有关吧,加之其播放、制作工具目前还不是很丰富,所以知道的人不是很多。但不管怎么说,VQF的确是一种优秀的音乐压缩格式。常见播放工具有Yamaha VQ Player等等。
6、.vsd:
visio画的流程图
7、.vss:
visio template file
W:1、.wdl:
Dynadoc,华康文件阅读器 可用dynadoc 或 FPread32.exe为关键字在ftp搜索引擎搜索。
2、.wmf:
WINDOWS的图元文件,用ACDSEE可以看,WORD也可以打开。
3、.wpd:
WPD是corel公司的wordperfect字处理软件的文档的扩展名。
4、.wsz:
winamp的skin,down下来以后是wsz格式ws打开一个winzip先,然后用winzip里的open。。。。。。。
X:
1、.xls:
MicroSoft Excel的文件。
2、.xml:
eXtensible Markup Language
SGML的一个子集, 1998年2月正式发布1.0版
目前IE5.0可支持,可以在IE5.0下浏览.xml文件,但同时必须有相应的.xsl文件
才能正常显示。
Y:
......
Z:
1、.zip:
zip是一种最常见的压缩格式,在UNIX下解开zip用unzip命令。
在PC下解开zip可以用pkunzip.exe,一般在大ftp里面都可以找到,
或者用winzip解开。pkunzip -d filename.zip可以带目录结构解开文件

⑷ PHP能不能直接读写mdb文件要怎么做详细的。

以下为几个php连接access数据库和操作acess数据的方法,全部州空睁做成了类,应用起来也更方便,也可摘用其中的部分代码应用。
<?php
--------------------------------------------------------------------
//FileName:class.php
//Summary: Access数据库操作类
// 使用范例:
//$databasepath="database.mdb";
//$dbusername="";
//$dbpassword="";
//include_once("class.php");
//$access=new Access($databasepath,$dbusername,$dbpassword);
--------------------------------------------------------------------
class Access
{
var $databasepath,$constr,$dbusername,$dbpassword,$link;
function Access($databasepath,$dbusername,$dbpassword)
{
$this->databasepath=$databasepath;
$this->username=$dbusername;
$this->password=$dbpassword;
$this->connect();
}

function connect()
{
$this->constr="DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" . realpath($this->databasepath);
$this->link=odbc_connect($this->constr,$this->username,$this->password,SQL_CUR_USE_ODBC);
return $this->link;
//if($this->link) echo "恭喜你亏瞎,数据库连接成功!";
//else echo "数据库连册岁接失败!";
}

function query($sql)
{
return @odbc_exec($this->link,$sql);
}

function first_array($sql)
{
return odbc_fetch_array($this->query($sql));
}

function fetch_row($query)
{
return odbc_fetch_row($query);
}

function total_num($sql)//取得记录总数
{
return odbc_num_rows($this->query($sql));
}

function close()//关闭数据库连接函数
{
odbc_close($this->link);
}

function insert($table,$field)//插入记录函数
{
$temp=explode(',',$field);
$ins='';
for ($i=0;$i<count($temp);$i++)
{
$ins.="'".$_POST[$temp[$i]]."',";
}
$ins=substr($ins,0,-1);
$sql="INSERT INTO ".$table." (".$field.") VALUES (".$ins.")";
$this->query($sql);
}

function getinfo($table,$field,$id,$colnum)//取得当条记录详细信息
{
$sql="SELECT * FROM ".$table." WHERE ".$field."=".$id."";
$query=$this->query($sql);
if($this->fetch_row($query))
{
for ($i=1;$i<$colnum;$i++)
{
$info[$i]=odbc_result($query,$i);
}
}
return $info;
}

function getlist($table,$field,$colnum,$condition,$sort="ORDER BY id DESC")//取得记录列表
{
$sql="SELECT * FROM ".$table." ".$condition." ".$sort;
$query=$this->query($sql);
$i=0;
while ($this->fetch_row($query))
{
$recordlist[$i]=getinfo($table,$field,odbc_result($query,1),$colnum);
$i++;
}
return $recordlist;
}

function getfieldlist($table,$field,$fieldnum,$condition="",$sort="")//取得记录列表
{
$sql="SELECT ".$field." FROM ".$table." ".$condition." ".$sort;
$query=$this->query($sql);
$i=0;
while ($this->fetch_row($query))
{
for ($j=0;$j<$fieldnum;$j++)
{
$info[$j]=odbc_result($query,$j+1);
}
$rdlist[$i]=$info;
$i++;
}
return $rdlist;
}

function updateinfo($table,$field,$id,$set)//更新记录
{
$sql="UPDATE ".$table." SET ".$set." WHERE ".$field."=".$id;
$this->query($sql);
}

function deleteinfo($table,$field,$id)//删除记录
{
$sql="DELETE FROM ".$table." WHERE ".$field."=".$id;
$this->query($sql);
}

function deleterecord($table,$condition)//删除指定条件的记录
{
$sql="DELETE FROM ".$table." WHERE ".$condition;
$this->query($sql);
}

function getcondrecord($table,$condition="")// 取得指定条件的记录数
{
$sql="SELECT COUNT(*) AS num FROM ".$table." ".$condition;
$query=$this->query($sql);
$this->fetch_row($query);
$num=odbc_result($query,1);
return $num;
}
}
?>
22222222
class.php文件:
[php]
<?php
class Access//Access数据库操作类
{
var $databasepath,$constr,$dbusername,$dbpassword,$link;//类的属性

function Access($databasepath,$dbusername,$dbpassword)//构造函数
{
$this->databasepath=$databasepath;
$this->username=$dbusername;
$this->password=$dbpassword;
$this->connect();
}

function connect()//数据库连接函数
{
$this->constr="DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" . realpath($this->databasepath);
$this->link=odbc_connect($this->constr,$this->username,$this->password,SQL_CUR_USE_ODBC);
return $this->link;
//if($this->link) echo "恭喜你,数据库连接成功!";
//else echo "数据库连接失败!";
}

function query($sql)//送一个查询字符串到数据库中
{
return @odbc_exec($this->link,$sql);
}

function first_array($sql)//从access数据库中返回一个数组
{
return @odbc_fetch_array($this->query($sql));
}

function fetch_row($query)//返回记录中的一行
{
return odbc_fetch_row($query);
}

function total_num($sql)//取得记录总数
{
return odbc_num_rows($this->query($sql));
}

function close()//关闭数据库连接函数
{
odbc_close($this->link);
}

function insert($table,$field)//插入记录函数
{
$temp=explode(',',$field);
$ins='';
for ($i=0;$i {
$ins.="'".$_POST[$temp[$i]]."',";
}
$ins=substr($ins,0,-1);
$sql="INSERT INTO ".$table." (".$field.") VALUES (".$ins.")";
$this->query($sql);
}

function getinfo($table,$field,$id,$colnum)//取得当条记录详细信息
{
$sql="SELECT * FROM ".$table." WHERE ".$field."=".$id."";
$query=$this->query($sql);
if($this->fetch_row($query))
{
for ($i=1;$i<$colnum;$i++)
{
$info[$i]=odbc_result($query,$i);
}
}
return $info;
}

function getlist($table,$field,$colnum,$condition,$sort="ORDER BY id DESC")//取得记录列表
{
$sql="SELECT * FROM ".$table." ".$condition." ".$sort;
$query=$this->query($sql);
$i=0;
while ($this->fetch_row($query))
{
$recordlist[$i]=getinfo($table,$field,odbc_result($query,1),$colnum);
$i++;
}
return $recordlist;
}

function getfieldlist($table,$field,$fieldnum,$condition="",$sort="")//取得记录列表
{
$sql="SELECT ".$field." FROM ".$table." ".$condition." ".$sort;
$query=$this->query($sql);
$i=0;
while ($this->fetch_row($query))
{
for ($j=0;$j<$fieldnum;$j++)
{
$info[$j]=odbc_result($query,$j+1);
}
$rdlist[$i]=$info;
$i++;
}
return $rdlist;
}

function updateinfo($table,$field,$id,$set)//更新记录函数
{
$sql="UPDATE ".$table." SET ".$set." WHERE ".$field."=".$id;
$this->query($sql);
}

function deleteinfo($table,$field,$id)//删除记录函数
{
$sql="DELETE FROM ".$table." WHERE ".$field."=".$id;
$this->query($sql);
}

function deleterecord($table,$condition)//删除指定条件的记录函数
{
$sql="DELETE FROM ".$table." WHERE ".$condition;
$this->query($sql);
}

function getcondrecord($table,$condition="")//取得指定条件的记录数函数
{
$sql="SELECT COUNT(*) AS num FROM ".$table." ".$condition;
$query=$this->query($sql);
$this->fetch_row($query);
$num=odbc_result($query,1);
return $num;
}
}
?>
[/php]
数据库连接文件:
[php]
<?php
$databasepath="data/database.mdb";//数据库路径
$dbusername="";//数据库用户名
$dbpassword="";//数据库密码
include_once("class.php");//调用数据库操作类
$access=new Access($databasepath,$dbusername,$dbpassword);//新建一个数据库操作类的对象
?>
[/php]

[php]
<?php
$sql="select * from $info where id=$id";
$result=$access->query($sql)or die("error2");
$array=odbc_fetch_array($result);
?>
[/php]
333333333333
这个是为了 同时可以使用access和mysql而做的 先弄一个mysql的 然后又写一个access的 所有的函数一一对应 你可以看下 绝对原创喔~~
配置文件如下
$config['db']['type'] = "Mysql"; //数据库类型“Mysql”,“Access”
$config['db']['database']= "ourcms"; //数据库(文件)名
$config['db']['host'] = ""; //数据库主机
$config['db']['username']= "7king"; //数据库连接用户名
$config['db']['password']= "tingting"; //数据库连接密码

/*
$config['db']['type'] = "Access"; //数据库类型“Mysql”,“Access”
$config['db']['database']= "ourcms.mdb";//数据库(文件)名
$config['db']['host'] = "";
$config['db']['username']= "";
$config['db']['password']= "";

<?php
/**
* 2007.04 by zhaohe
*
* php连接access通用类
*
* 用法:
* 建立new Access类 => set_db设置数据路径 => set_login 设置连接数据库的用户名和密码
* => 通过set_conn 设置连接 =>
* {
get_result 获取查询执行结果; get_result_rows 获取查询执行列表,一般是select
insert_info 插入新的记录 update_info更新记录
}
*
*
*/

class Access {
/**
* 类变量定义
* @param $conn mysql连接号
* @param $error 错误代号
* @param $username/$password 数据库连接用户名和密码
* @param array $err_info 错误信息
*
* @param $debuginfo 调试信息
* @param $table 当前操作数据表
*/
var $conn;
var $error;
var $database;
var $username = "";
var $password = "";
var $err_info = array(
0 => "没有错误!",
1 => "数据库连接失败!",
2 => "sql执行出错!"
);
var $debuginfo="";
var $table;

/**
* 默认构造方法
**/
function Access( $arr=null ){
if( is_array($arr) ) {
$this->set_login( $arr['host'] , $arr['username'] , $arr['password'] );
$this->set_db( $arr['database'] );
$this->set_conn();
}
}

/**
* 设置数据库文件名
* @param string $dbfile
*
* return void
*/
function set_db ( $dbfile ){
$this->database = $dbfile;
}

/**
* 设置连接数据库的用户名和密码
* @param string $user 用户名
* @param string $pwd 密码
*
* @return void
*/
function set_login ( $user , $pwd ){

$this->username=$user;
$this->password=$pwd;

}

/**
* 创建数据库连接
* @param
* return void
*/
function set_conn ( ){

if($this->conn=odbc_connect("DRIVER=Microsoft Access Driver (*.mdb);DBQ=".realpath($this->database),$this->username,$this->password,SQL_CUR_USE_ODBC )) $this->error=0;
else $this->error=1;
}

/**
* 设置当前操作的数据表
* @param string $tb
*
* @return void
*/
function set_table( $tb ) {
$this->table = $tb;
}

/**
* 返回sql查询结果
* @param string $sql sql语句
*
* @return #id
*/
function get_result( $sql ){
return odbc_do( $this->conn , $sql );
}

/**
* 获取查询的结果
* @param string $sql
*
* @return array 结果的二维数组
*/
function get_result_rows( $sql ){

$array = array() ;
$result = $this->get_result( $sql );
while( $row = odbc_fetch_array( $result ) )
$array[] = $row ;
return $array;
}

/**
* 获取部分查询结果
*
* @param Array 数组
* @return Array
*/
function get_query_result( $cols , $tb=null , $order=null , $limit=null , $start=0 ) {
if( empty($tb) ) $tb=$this->table;
else $this->table=$tb;

if( is_array($cols) ) $col="[".implode('],[',$cols)."]";
else $col = $cols;

if( empty($limit) )
$sql = "select $col from $tb";
else
$sql ="select top $limit $col from $tb";;
if( isset($order) ) $sql.=" order by $order";

return $this->get_result_rows($sql);
}

/**
* 执行数据库插入操作
*
* @param $arr values列表,数组索引为数据表字段
* @param $tb 操作数据表 如果为空则为设置的当前类的操作表
*/
function insert_info( $arr , $tb = "" ) {

$cols = array_keys( $arr );
$values = array_values( $arr );

if (empty($tb)) $tb = $this->tb;
/*
foreach( $arr as $key => $value ){
$cols[] = $key;
$values[] = $value;
}
*/
$sql = "insert into [$tb]([".implode("],[",$cols)."]) values('".implode("','",$values)."')";
//return $sql;
return $this->get_result( $sql );
}

/**
* 执行数据库更新操作
*
* @param array $arr 要更新的字段值 数组索引为表字段名
* @param array $con 条件数组
* @param string $tb 要操作的数据表
*
*/
function update_info( $arr , $con , $tb = "" ) {

$cols = array();
$conditions = array();

if (empty( $tb )) $tb = $this->tb;

foreach( $arr as $key => $value ){
$cols[] = "[$key]='$value'";
}

foreach( $con as $key => $value ) {
//检查数据类型
if( is_int($value) || is_float($value) )
$conditions[] = "[$key]=$value";
else
$conditions[] = "[$key]='$value'";
}

$sql = "update [$tb] set ".implode(",",$cols)." where ".implode(" and ",$conditions);
//return $sql;
return $this->get_result( $sql );
}

}
?>

mysql的类如下
class Mysql {
/**
* mysql连接执行类,将sql的执行实现数据库无关性
*
*
*
*/

/**
* 类变量定义
* @param $conn mysql连接号
* @param $error 错误代号
* @param $username/$password 数据库连接用户名和密码
* @param array $err_info 错误信息
*
* @param $debuginfo 调试信息
* @param $table 当前操作数据表
*/
var $conn;
var $error;
var $username = "";
var $password = "";
var $host;
var $database;
var $err_info = array(
0 => "没有错误!",
1 => "数据库连接失败!",
2 => "sql执行出错!"
);
var $debuginfo="";
var $table;

function Mysql( $arr=null ) {
if( is_array($arr) ) {//var_mp($arr);
$this->set_login( $arr['host'] , $arr['username'] , $arr['password'] );
$this->set_db( $arr['database'] );
$this->set_conn();
if( isset($this->error) && $this->error!=0 ) die($this->err_info[$this->error]);
}
}

/**
* 设置数据库名
* @param string $database
*
* return void
*/
function set_db ( $dbfile ){
$this->database = $dbfile;
}
/**
* 设置连接数据库的用户名和密码
* @param string $user 用户名
* @param string $pwd 密码
*
* @return void
*/
function set_login ( $host , $user , $pwd ){

$this->host=$host;
$this->username=$user;
$this->password=$pwd;

}

/**
* 创建数据库连接
* @param
* return void
*/
function set_conn (){

$this->conn=mysql_connect($this->host,$this->username,$this->password );

if ( isset($this->conn) && mysql_select_db($this->database) )
$this->error=0;
else
$this->error=1;
}

/**
* 设置当前操作的数据表
* @param string $tb
*
* @return void
*/
function set_table( $tb ) {
$this->table = $tb;
}

/**
* 返回sql查询结果
* @param string $sql sql语句
*
* @return #id
*/
function get_result( $sql ){
return mysql_query( $sql , $this->conn );
}

/**
* 获取查询的结果
* @param string $sql
*
* @return array 结果的二维数组
*/
function get_result_rows( $sql ){
$array = array() ;
$result = $this->get_result( $sql );
while( $row = mysql_fetch_assoc( $result ) )
$array[] = $row ;
return $array;
}

/**
* 获取部分查询结果
*
* @param Array 数组
* @return Array
*/
function get_query_result( $cols , $tb=null , $condition , $order=null , $limit=null , $start=0 ) {
if( empty($tb) ) $tb=$this->table;
else $this->table=$tb;
if( is_array($cols) ) $col="`".implode('`,`',$cols)."`";
else $col = $cols;

if( isset($limit) )
$sql.="select top $limit $col from $tb";
else
$sql = "select $col from $tb";
if( isset($condition) ) $sql.=" where $condition";
if( isset($order) ) $sql.=" order by $order";
if( isset($limit) ) $sql.=" limit $start,$limit";

return $this->get_result_rows($sql);
}

/**
* 执行数据库插入操作
*
* @param $arr values列表,数组索引为数据表字段
* @param $tb 操作数据表 如果为空则为设置的当前类的操作表
*/
function insert_info( $arr , $tb = "" ) {

$cols = array_keys( $arr );
$values = array_values( $arr );

if (empty($tb)) $tb = $this->table;
/*
foreach( $arr as $key => $value ){
$cols[] = $key;
$values[] = $value;
}
*/
$sql = "insert into [$tb](`".implode("`,`",$cols)."`) values('".implode("','",$values)."')";
//return $sql;
return $this->get_result( $sql );
}

/**
* 执行数据库更新操作
*
* @param array $arr 要更新的字段值 数组索引为表字段名
* @param array $con 条件数组
* @param string $tb 要操作的数据表
*
*/
function update_info( $arr , $con , $tb = "" ) {

$cols = array();
$conditions = array();

if (empty( $tb )) $tb = $this->table;

if( is_array($arr) ) {
foreach( $arr as $key => $value ){
$cols[] = "`$key`='$value'";
}

foreach( $con as $key => $value ) {
//检查数据类型
if( is_int($value) || is_float($value) )
$conditions[] = "`$key`=$value";
else
$conditions[] = "`$key`='$value'";
}

$sql = "update `$tb` set ".implode(",",$cols)." where ".implode(" and ",$conditions);
}
else
$sql = "update `$tb` set $arr where $con";
//return $sql;
return $this->get_result( $sql );
}
}

⑸ PHP如何用header设置文件下载头!感谢~

$filename = '文件路径';
//文件的类型
header('Content-type: application/pdf');
//下载显示的名字
header('Content-Disposition: attachment; filename="保存时的文件名.pdf"');
readfile("$filename");
exit;

附服务器响应HTTP的类型ContentType大全:
".*"="application/octet-stream"
".001"="application/x-001"
".301"="application/x-301"
".323"="text/h323"
".906"="application/x-906"
".907"="drawing/907"
".a11"="application/x-a11"
".acp"="audio/x-mei-aac"
".ai"="application/postscript"
".aif"="audio/aiff"
".aifc"="audio/aiff"
".aiff"="audio/aiff"
".anv"="application/x-anv"
".asa"="text/asa"
".asf"="video/x-ms-asf"
".asp"="text/asp"
".asx"="video/x-ms-asf"
".au"="audio/basic"
".avi"="video/avi"
".awf"="application/vnd.adobe.workflow"
".biz"="text/xml"
".bmp"="application/x-bmp"
".bot"="application/x-bot"
".c4t"="application/x-c4t"
".c90"="application/x-c90"
".cal"="application/x-cals"
".cat"="application/vnd.ms-pki.seccat"
".cdf"="application/x-netcdf"
".cdr"="application/x-cdr"
".cel"="application/x-cel"
".cer"="application/x-x509-ca-cert"
".cg4"="application/x-g4"
".cgm"="application/x-cgm"
".cit"="application/x-cit"
".class"="java/*"
".cml"="text/xml"
".cmp"="application/x-cmp"
".cmx"="application/x-cmx"
".cot"="application/x-cot"
".crl"="application/pkix-crl"
".crt"="application/x-x509-ca-cert"
".csi"="application/x-csi"
".css"="text/css"
".cut"="application/x-cut"
".dbf"="application/x-dbf"
".dbm"="application/x-dbm"
".dbx"="application/x-dbx"
".dcd"="text/xml"
".dcx"="application/x-dcx"
".der"="application/x-x509-ca-cert"
".dgn"="application/x-dgn"
".dib"="application/x-dib"
".dll"="application/x-msdownload"
".doc"="application/msword"
".dot"="application/msword"
".drw"="application/x-drw"
".dtd"="text/xml"
".dwf"="Model/vnd.dwf"
".dwf"="application/x-dwf"
".dwg"="application/x-dwg"
".dxb"="application/x-dxb"
".dxf"="application/x-dxf"
".edn"="application/vnd.adobe.edn"
".emf"="application/x-emf"
".eml"="message/rfc822"
".ent"="text/xml"
".epi"="application/x-epi"
".eps"="application/x-ps"
".eps"="application/postscript"
".etd"="application/x-ebx"
".exe"="application/x-msdownload"
".fax"="image/fax"
".fdf"="application/vnd.fdf"
".fif"="application/fractals"
".fo"="text/xml"
".frm"="application/x-frm"
".g4"="application/x-g4"
".gbr"="application/x-gbr"
".gcd"="application/x-gcd"
".gif"="image/gif"
".gl2"="application/x-gl2"
".gp4"="application/x-gp4"
".hgl"="application/x-hgl"
".hmr"="application/x-hmr"
".hpg"="application/x-hpgl"
".hpl"="application/x-hpl"
".hqx"="application/mac-binhex40"
".hrf"="application/x-hrf"
".hta"="application/hta"
".htc"="text/x-component"
".htm"="text/html"
".html"="text/html"
".htt"="text/webviewhtml"
".htx"="text/html"
".icb"="application/x-icb"
".ico"="image/x-icon"
".ico"="application/x-ico"
".iff"="application/x-iff"
".ig4"="application/x-g4"
".igs"="application/x-igs"
".iii"="application/x-iphone"
".img"="application/x-img"
".ins"="application/x-internet-signup"
".isp"="application/x-internet-signup"
".IVF"="video/x-ivf"
".java"="java/*"
".jfif"="image/jpeg"
".jpe"="image/jpeg"
".jpe"="application/x-jpe"
".jpeg"="image/jpeg"
".jpg"="image/jpeg"
".jpg"="application/x-jpg"
".js"="application/x-javascript"
".jsp"="text/html"
".la1"="audio/x-liquid-file"
".lar"="application/x-laplayer-reg"
".latex"="application/x-latex"
".lavs"="audio/x-liquid-secure"
".lbm"="application/x-lbm"
".lmsff"="audio/x-la-lms"
".ls"="application/x-javascript"
".ltr"="application/x-ltr"
".m1v"="video/x-mpeg"
".m2v"="video/x-mpeg"
".m3u"="audio/mpegurl"
".m4e"="video/mpeg4"
".mac"="application/x-mac"
".man"="application/x-troff-man"
".math"="text/xml"
".mdb"="application/msaccess"
".mdb"="application/x-mdb"
".mfp"="application/x-shockwave-flash"
".mht"="message/rfc822"
".mhtml"="message/rfc822"
".mi"="application/x-mi"
".mid"="audio/mid"
".midi"="audio/mid"
".mil"="application/x-mil"
".mml"="text/xml"
".mnd"="audio/x-musicnet-download"
".mns"="audio/x-musicnet-stream"
".mocha"="application/x-javascript"
".movie"="video/x-sgi-movie"
".mp1"="audio/mp1"
".mp2"="audio/mp2"
".mp2v"="video/mpeg"
".mp3"="audio/mp3"
".mp4"="video/mpeg4"
".mpa"="video/x-mpg"
".mpd"="application/vnd.ms-project"
".mpe"="video/x-mpeg"
".mpeg"="video/mpg"
".mpg"="video/mpg"
".mpga"="audio/rn-mpeg"
".mpp"="application/vnd.ms-project"
".mps"="video/x-mpeg"
".mpt"="application/vnd.ms-project"
".mpv"="video/mpg"
".mpv2"="video/mpeg"
".mpw"="application/vnd.ms-project"
".mpx"="application/vnd.ms-project"
".mtx"="text/xml"
".mxp"="application/x-mmxp"
".net"="image/pnetvue"
".nrf"="application/x-nrf"
".nws"="message/rfc822"
".odc"="text/x-ms-odc"
".out"="application/x-out"
".p10"="application/pkcs10"
".p12"="application/x-pkcs12"
".p7b"="application/x-pkcs7-certificates"
".p7c"="application/pkcs7-mime"
".p7m"="application/pkcs7-mime"
".p7r"="application/x-pkcs7-certreqresp"
".p7s"="application/pkcs7-signature"
".pc5"="application/x-pc5"
".pci"="application/x-pci"
".pcl"="application/x-pcl"
".pcx"="application/x-pcx"
".pdf"="application/pdf"
".pdf"="application/pdf"
".pdx"="application/vnd.adobe.pdx"
".pfx"="application/x-pkcs12"
".pgl"="application/x-pgl"
".pic"="application/x-pic"
".pko"="application/vnd.ms-pki.pko"
".pl"="application/x-perl"
".plg"="text/html"
".pls"="audio/scpls"
".plt"="application/x-plt"
".png"="image/png"
".png"="application/x-png"
".pot"="application/vnd.ms-powerpoint"
".ppa"="application/vnd.ms-powerpoint"
".ppm"="application/x-ppm"
".pps"="application/vnd.ms-powerpoint"
".ppt"="application/vnd.ms-powerpoint"
".ppt"="application/x-ppt"
".pr"="application/x-pr"
".prf"="application/pics-rules"
".prn"="application/x-prn"
".prt"="application/x-prt"
".ps"="application/x-ps"
".ps"="application/postscript"
".ptn"="application/x-ptn"
".pwz"="application/vnd.ms-powerpoint"
".r3t"="text/vnd.rn-realtext3d"
".ra"="audio/vnd.rn-realaudio"
".ram"="audio/x-pn-realaudio"
".ras"="application/x-ras"
".rat"="application/rat-file"
".rdf"="text/xml"
".rec"="application/vnd.rn-recording"
".red"="application/x-red"
".rgb"="application/x-rgb"
".rjs"="application/vnd.rn-realsystem-rjs"
".rjt"="application/vnd.rn-realsystem-rjt"
".rlc"="application/x-rlc"
".rle"="application/x-rle"
".rm"="application/vnd.rn-realmedia"
".rmf"="application/vnd.adobe.rmf"
".rmi"="audio/mid"
".rmj"="application/vnd.rn-realsystem-rmj"
".rmm"="audio/x-pn-realaudio"
".rmp"="application/vnd.rn-rn_music_package"
".rms"="application/vnd.rn-realmedia-secure"
".rmvb"="application/vnd.rn-realmedia-vbr"
".rmx"="application/vnd.rn-realsystem-rmx"
".rnx"="application/vnd.rn-realplayer"
".rp"="image/vnd.rn-realpix"
".rpm"="audio/x-pn-realaudio-plugin"
".rsml"="application/vnd.rn-rsml"
".rt"="text/vnd.rn-realtext"
".rtf"="application/msword"
".rtf"="application/x-rtf"
".rv"="video/vnd.rn-realvideo"
".sam"="application/x-sam"
".sat"="application/x-sat"
".sdp"="application/sdp"
".sdw"="application/x-sdw"
".sit"="application/x-stuffit"
".slb"="application/x-slb"
".sld"="application/x-sld"
".slk"="drawing/x-slk"
".smi"="application/smil"
".smil"="application/smil"
".smk"="application/x-smk"
".snd"="audio/basic"
".sol"="text/plain"
".sor"="text/plain"
".spc"="application/x-pkcs7-certificates"
".spl"="application/futuresplash"
".spp"="text/xml"
".ssm"="application/streamingmedia"
".sst"="application/vnd.ms-pki.certstore"
".stl"="application/vnd.ms-pki.stl"
".stm"="text/html"
".sty"="application/x-sty"
".svg"="text/xml"
".swf"="application/x-shockwave-flash"
".tdf"="application/x-tdf"
".tg4"="application/x-tg4"
".tga"="application/x-tga"
".tif"="image/tiff"
".tif"="application/x-tif"
".tiff"="image/tiff"
".tld"="text/xml"
".top"="drawing/x-top"
".torrent"="application/x-bittorrent"
".tsd"="text/xml"
".txt"="text/plain"
".uin"="application/x-icq"
".uls"="text/iuls"
".vcf"="text/x-vcard"
".vda"="application/x-vda"
".vdx"="application/vnd.visio"
".vml"="text/xml"
".vpg"="application/x-vpeg005"
".vsd"="application/vnd.visio"
".vsd"="application/x-vsd"
".vss"="application/vnd.visio"
".vst"="application/vnd.visio"
".vst"="application/x-vst"
".vsw"="application/vnd.visio"
".vsx"="application/vnd.visio"
".vtx"="application/vnd.visio"
".vxml"="text/xml"
".wav"="audio/wav"
".wax"="audio/x-ms-wax"
".wb1"="application/x-wb1"
".wb2"="application/x-wb2"
".wb3"="application/x-wb3"
".wbmp"="image/vnd.wap.wbmp"
".wiz"="application/msword"
".wk3"="application/x-wk3"
".wk4"="application/x-wk4"
".wkq"="application/x-wkq"
".wks"="application/x-wks"
".wm"="video/x-ms-wm"
".wma"="audio/x-ms-wma"
".wmd"="application/x-ms-wmd"
".wmf"="application/x-wmf"
".wml"="text/vnd.wap.wml"
".wmv"="video/x-ms-wmv"
".wmx"="video/x-ms-wmx"
".wmz"="application/x-ms-wmz"
".wp6"="application/x-wp6"
".wpd"="application/x-wpd"
".wpg"="application/x-wpg"
".wpl"="application/vnd.ms-wpl"
".wq1"="application/x-wq1"
".wr1"="application/x-wr1"
".wri"="application/x-wri"
".wrk"="application/x-wrk"
".ws"="application/x-ws"
".ws2"="application/x-ws"
".wsc"="text/scriptlet"
".wsdl"="text/xml"
".wvx"="video/x-ms-wvx"
".xdp"="application/vnd.adobe.xdp"
".xdr"="text/xml"
".xfd"="application/vnd.adobe.xfd"
".xfdf"="application/vnd.adobe.xfdf"
".xhtml"="text/html"
".xls"="application/vnd.ms-excel"
".xls"="application/x-xls"
".xlw"="application/x-xlw"
".xml"="text/xml"
".xpl"="audio/scpls"
".xq"="text/xml"
".xql"="text/xml"
".xquery"="text/xml"
".xsd"="text/xml"
".xsl"="text/xml"
".xslt"="text/xml"
".xwd"="application/x-xwd"
".x_b"="application/x-x_b"
".x_t"="application/x-x_t"

⑹ php的mdb2的问题

不是自带的文件,PHP不自带任何PHP文件,这是你自己写的。

⑺ php 链接 .mdb数据库,并读取

PHP和经典的ACCESS数据库同样能达到较好的效果,不过采用ODBC的方式来连接该access我个人不主张这样做,因为现在虚拟机不可能提供odbc连接,推荐使用PHP的ADODB对象来连接该数据库

⑻ 扩展名为.mdb是叫什么名字的数据库在哪里网址可以下载

mdb(Microsoft Database)格式是Microsoft Access软件使用的一种存亩哗配储格式,因其对数据迅指操作的方便性,常用在一些中小型程序中。mdb格式的数据库是一种关系数据库。MDB View 可以在没有安装 Microsoft Access情况下进行阅读MDB数据库文件芦空。下载地址: http://dl.it.21cn.com/downit.php?id=42741

阅读全文

与phpmdb下载相关的资料

热点内容
苹果笔记本t2加密芯片怎么打开 浏览:796
安卓如何把手机投屏至电视 浏览:737
方舟编译器现在可提速哪些软件 浏览:58
微信加密为什么是黑屏 浏览:473
android去电状态 浏览:602
苹果13如何加密视频 浏览:813
linuxweblogic缓存 浏览:67
云服务器不同地域 浏览:946
python闹钟怎么打 浏览:686
虚拟主机服务器有什么区别 浏览:833
算法与程序的奥秘章节检测 浏览:377
找pdf 浏览:529
与服务器连接断开如何处理 浏览:833
服务器维修预计十分钟什么意思 浏览:170
黑马程序员主打教学是什么 浏览:41
python九乘法表怎么编写 浏览:974
思维方式pdf 浏览:656
tcc社区app怎么注册 浏览:941
央视网下载加密 浏览:454
命令行访问服务器 浏览:36