class.config.php class.mysql.php class.page.admin.php <? /* * *主要用于数据库的各种操作 *尛紅褀2007-04-01 *函数列表 function Err($sql = "") //错误处理函数 function TDatabase($config) //连接数据库函数 function SelectDb($database) //选择数据库函数 function Query($SQL) //执行数据库查询函数 function FetchArray($result) //将查询结果倒入到数组函数,可通过下标和字段名访问结果 function FetchRow($result) //从结果集中取得一行作为枚举数组 function FetchObject($result) //从结果集中取得一行作为对象,只能通过字段名访问结果 function FreeResult(&$result) //释放结果内存 function NumRo...
一. 10句话
1.不要依赖register_global=ON的环境,从你刚懂得配置php运行环境甚至尚不明白register_global的ON/OFF会对自己有什么影响的那天起,就应该勇敢地把它设为OFF.
2.写程序前看看怎么用error_reporting.
3.不懂就问本身没错,但你需要在那之前查查手册。
4.当然,你需要懂得使用手册。手册上找不到答案的时候,应该考虑下网络上的搜索引擎。
5.刚学会php+mysql之后,不要叫嚷着要写论坛,要写XXX。要明白,刚学会写汉字并不表示你有能力写诗。
6.在学web编程的时候,你应该先去认识html这个朋友。
7.有点能力后,试着回答新手的问题,不要看到自己懂的而别人不懂就沾沾自喜,扔下一名“简单,那是基本的东西”就...
<?php $DB_Server = "localhost"; $DB_Username = "mydowns"; $DB_Password = ""; $DB_DBName = "mydowns"; $DB_TBLName = "user"; $Connect = @mysql_connect($DB_Server, $DB_Username, $DB_Password) or die("Couldn't connect."); $Db = @mysql_select_db($DB_DBName, $Connect) or die("Couldn't select database."); $file_type = "vnd.ms-excel"; $file_ending = "xls"; header("Content-Type: application/$file_type"); header("Content-Disposition: attachment; filename=mydowns.$file_ending"); header("Pragma: no-cache"); header("Expires: 0"); $now_date = date('Y-m-d H:i...
在一些小型的应用中,完全没有必要使用大型数据库软件。自己做一个SQL解释器就能用数据库的方式来管理了。这个解释器,能解释常用的SQL命令。你可以自行添加其他功能。<?phpclass DB_text {var $conn;var $classname = "db_text";var $database;function on_create() {}function connect($database_name) {$this->database = $database_name;if(! file_exists($database_name)) {$this->conn = array();$this->_close();}$fp = fopen($this->database,"r");$this->conn = unserialize(fread($fp,filesize(...
前几天做了一个非常奇怪的项目,我公司开发了一套基于中国联通SGIP协议的SP端短消息服务软件,提供联通130短信服务。这套系统是Windows 2000下的,数据库采用的是微软SQLServer2000,并且已经正常运行了一段时间。 而最近由于要在WEB上提供短消息用户的一些信息,就需要从WEB上读写SQLServer数据库,本来SQLServer数据库的最佳搭档应该是微软IIS ASP服务端脚本,但我公司一向认为IIS+ASP的稳定性和安全性都不尽如意,希望能够在Linux下用PHP脚本读写SQLServer。 分析问题 本来PHP脚本读写SQLServer是没有什么问题的,在Apache for windows和Windows IIS下可以工作的很好,一般可以通过...
以前的国外主机用的Mysql是4.x系列的,感觉还比较好,都无论GBK和UTF-8都没有乱码,没想到新的主机的Mysql是5.0版本的,导入数据后,用Php读出来全是问号,乱码一片,记得我以前也曾经有过一次切换出现乱码的经验,原因肯定是Mysql版本之间的差异问题。
只好查资料,发现了一个解决方法,就是在mysql_connect后面加一句SET NAMES UTF8,即可使得UTF8的数据库消除乱码,对于GBK的数据库则使用SET NAMES GBK,代码如下:$mysql_mylink = mysql_connect($mysql_host, $mysql_user, $mysql_pass);mysql_query("SET NAMES 'GBK'");...
php中mysql_pconnect()的实现方式: 其实mysql_pconnect()本身并没有做太多的处理, 它唯一做的只是在php运行结束后不主动close掉mysql的连接. mysql_pconnect()与此同时mysql_connect()的区别:cgi方式下:在php经cgi方式运行时pconnect和connect是基本没有区别的, 因为cgi方式是每一个php访问起一个进程, 访问结束后进程也就结束了, 资源也全释放了. apache模块方式下:区别在于当php以apache模块方式运行时, 由于apache有使用进程池, 一个httpd进程结束后会被放回进程池, 这也就使得用pconnect打开的的那个mysql连接资源不被释放, 于是有下一个连接请求时就可以被复用.这就使得在apache并发访问量不大的时候, 由于使用了pconnect, php节省了反复连接...
1. 分号的例外
对于 mysql ,第一件你必须牢记的是它的每一行命令都是用分号 (;) 作为结束的,但……没有完全绝对的事,在这儿也是一样,当一行 mysql 被插入在 php 代码中时,最好把后面的分号省略掉,例如:
mysql_query ("insert into tablename (first_name, last_name)
values ('$first_name', '$last_name')
");
这是因为 php 也是以分号作为一行的结束的,额外的分号有时会让 php 的语法分析器搞不明...
很多使用mysql建站的朋友都会遇到一个问题,就是在向mysql中导入大量数据时遇到各种挫折。使用phpmyadmin导出数据库备份很容易,但是要执行相反的操作简直就是一场恶梦。 这段代码就是针对这个问题而写的,起源于今天帮一个朋友恢复一个discuz论坛数据库。 使用前请首先按照代码注释修改要导入的SQL文件名、数据库主机名、数据库用户名、密码、数据库名,同时将数据库文件和本文本一起ftp导网站目录,然后以web方式访问此文件即可。 注: 1、此代码当php运行于safe mode的时候超时设置语句set_time_limit失效,可能会导致导入中途失败,解决办法是将要导入的文件分成多个,逐块导入。 2、本部分代码是今天刚刚出炉,只是经过简单的测试,...
在建设网站的过程中,经常要处理一些数据的导入及导出。在Mysql数据库中,一般有两种方法来处理数据的导出:
1. 使用select * from table_name into outfile “file_name”;
2. 使用mysqldump实用程序
下面我们来举例说明:
假设我们的数据库中有一个库为samp_db,一个表为samp_table。现在要把samp_table的数据导出。则我们可以利用以下方法来实现:
在Mysql提示符下打入select * from samp_table into outfile “file_name”;
在系统命令提示符下打入mysqldump ?Cu root samp_db samp_table >samp.sql
(当然mysqldump有很多选项.如 -d 表示只导出表结构; -t 表...
类别:数据库 查看:142
更新:2014-05-19
下面是Sql Server 和 Access 操作数据库结构的常用Sql,希望对你有所帮助。
新建表:
create table [表名]
(
[自动编号字段] int IDENTITY (1,1) PRIMARY KEY ,
[字段1] nVarChar(50) default '默认值' null ,
[字段2] ntext null ,
[字段3] datetime,
[字段4] money null ,
[字段5] int default 0,
[字段6] Decimal (12,4) default 0,
[字段7] image null ,
)
删除表:
Drop table [表名]
插入数据:
Insert INTO [表名] (字段1,字段2) VALUES (100,'51WINDOWS.NET')
删除数据:
Delete FROM [表名] Where [字段名]>100
更新数据:
Update [表名] SE...
类别:数据库 查看:120
更新:2014-05-19
在进行数据库查询时,有完整查询和模糊查询之分。一般模糊语句如下:SELECT 字段 FROM 表 WHERE 某字段 Like 条件
其中关于条件,SQL提供了四种匹配模式:1,%:表示任意0个或多个字符。可匹配任意类型和长度的字符,有些情况下若是中文,请使用两个百分号(%%)表示。比如 SELECT * FROM [user] WHERE u_name LIKE '%三%'将会把u_name为“张三”,“张猫三”、“三脚猫”,“唐三藏”等等有“三”的记录全找出来。另外,如果需要找出u_name中既有“三”又有“猫”的记录,请使用and条件SELECT * FROM [user] WHERE u_name LIKE '%三%' AND u_name LIKE '%猫%'若使用 SELE...
类别:数据库 查看:129
更新:2014-05-19
在使用DB2以来,碰到了几次出现提示SQL1032N错误,每次出错时出错信息大概如下:11/21/2004 22:15:33 0 0 SQL1042C 发生意外的系统错误。 SQL1032N 未发出启动数据库管理器的命令。 SQLSTATE=57019。每次出现问题后,都到网上找了很多资料,也问了许多人,费了些力才搞定的。几次出错的原因和解决方法都不尽相同,解决后我也只做了个简单的记录。一直想把它们写下来,方便方便后来也遇到同样问题,跟我一样到处查找的人,中间也写了一些废话,比如我如何查找错误,甚至于作了哪些无用功。第一种SQL1032N出错,是某天DB2的实例突然无法启动了,用db2start就提示大概如下的出错信息:12/30/2004 11:28:39 0 0 SQ...
类别:数据库 -
DB2 查看:108
更新:2014-05-19
目录 需求 工作原理 实现 参考资源 需求有些时候我们会有这样的需求,要求使用字母从a至z对一组数据进行索引,如果数据的格式全部是半角的英文则很容易实现,但若是对一组中文数据进行索引则会引起一点小的麻烦,数据在录入数据库的时候可能并没有指定一个索引字母,这就要求应用程序可以自动生成用于索引的信息。一般对于中文数据的索引,采用词组的首汉字拼音的首字母,例如:词组 索引字母--- -----熊猫 x白暨豚 b藏野驴 z在DB2中并没有提供相应的函数可以取得汉字拼音的首字母,我们可以利用数据库针对中文字符集的排序功能创建一个这样的函数。工作原理我们知道在使用中文字符集的数据库中,当你对一列中文数据使用order by ...
类别:数据库 -
DB2 查看:101
更新:2014-05-19
不同数据库平台的互连一般称之为数据库的异构服务,现在各大数据库之间都可以实现这样的异构互连,只是各厂商的具体实现技术不一样,如:在SQL SERVER里面叫做LINKED SERVER,通过ODBC实现与其它数据库的互联。
本文的测试环境为:
操作系统: WINDOWS2000 SERVER (繁体系统)
安装数据库: SQLSERVER2000(英文版)和DB2 7.2客户端(英文版)
具体实现步骤:
1.要求pc机上安装DB2客户端软件和sqlserver2000软件。
2.配置windows的ODBC数据源:
开始菜单—》程式集—》系统管理工具—》资...
类别:数据库 -
DB2 查看:114
更新:2014-05-19
在現實的DB2應用中大家可能經常會遇到一些錯誤,錯誤的原因是對DB2的限制不太了解而引起的,在此我簡單地總結一下,歡迎大家繼續﹐以便和大家共享﹐共同探討﹐共同近步﹗(以下主要以DB2 7.X為例)。1. 最長的認証名(單字節字符)<=302. 最長的約束名稱<=183. 最長的關聯名稱<=1284. 最長的條件名稱<=645. 最長的游標名稱<=186. 最長數据源列名稱<=1287. 最長數据源索引名稱<=1288. 最長數据源名稱<=1289. 最長數据源表名稱(遠程認証名稱)<=12810. 最長外部程序名稱<=811. 最長主機標識符<=25512. 最長數据源用戶的標識符(遠程認証名稱)<=3013. 最長標簽名稱<=6414. 最長方法名稱<...
类别:数据库 -
DB2 查看:86
更新:2014-05-19