CodeIgniter 是一套给 PHP 网站开发者使用的应用程序开发框架和工具包。她提供一套丰富的标准库以及简单的接口和逻辑结构,其目的是使开发人员更快速地进行项目开发。(详情查看维基百科) Continue reading
Tags: CodeIgniter, PHP, 编程Category Archives: PHP
常用的PHP数据库操作方法(MYSQL版)
Gevin最近一直在折腾自己的网站首页——Gevin的空间,写的大部分PHP脚本都要用到和MYSQL数据库相关的操作,今天把这些方法和大家分享一下,希望大家能多多交流!
一、数据库操作
1. 连接MYSQL数据
mysql_connect()
e.g.
$db = mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASSWORD) or die(‘Unable to connect, please check connection paremeters’);
Continue reading
Tags: mysql, PHP, web开发, 源码, 编程完美解决301重定向的两种方法
301重定向真是个好方法啊。前一篇文章Gevin也说过,本博客不幸被换域名了。域名一换,以前辛苦做博客的成果也就报废了,网上的相关链接也打不开了,搜索引擎的收录也杯具了……
幸好有301重定向能有效解决这样的问题。正如月光博客这篇文章中说的,
301重定向可促进搜索引擎优化效果
从搜索引擎优化角度出发,301重定向是网址重定向最为可行的一种办法。当网站的域名发生变更后,搜索引擎只对新网址进行索引,同时又会把旧地址下原有的外部链接如数转移到新地址下,从而不会让网站的排名因为网址变更而收到丝毫影响。同样,在使用301永久性重定向命令让多个域名指向网站主域时,亦不会对网站的排名产生任何负面影响。
关于301重定向的更多内容,大家不妨Google一下。本文只介绍实现方法啦!
PHP实现网页重定向
MYSQL创建表并创建外键
本文Gevin向介绍PHP中创建MYSQL数据表和创建外键的语法,希望对大家有帮助!
1.php创建MySQL表
在php中创建表的代码在下面,只要有点sql基础,就应该能看懂,否则,Gevin建议先练一下sql的基本功,打好基础更重要。
//创建网站地址表 $query = 'CREATE TABLE IF NOT EXISTS websites (website_id INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, website_name VARCHAR(50) NOT NULL DEFAULT "", website_url VARCHAR(100) NOT NULL DEFAULT "", PRIMARY KEY (website_id) ) ENGINE = MyISAM character set utf8 COLLATE utf8_general_ci'; mysql_query($query, $db) or die(mysql_error($db)); echo '网站地址表创建成功<br />';Tags: IT, mysql, PHP, web开发, 源码, 编程
网页上显示MYSQL执行结果时utf8编码中文乱码的解决方法
在网页上显示MYSQL查询结果时,如果结果中包含中文,可能会出现乱码。
解决乱码问题分3步:
1. 保证数据库中要查询的字段是utf-8编码,为了保险起见,可以把数据库以及相关的中文字段都设置成utf-8编码(后半句应该是非必须的,我没折腾的试一下);
2. 网页的meta标签中要写明utf-8编码:
<meta http-equiv=”Content-Type” content=”text/html; charset=utf-8″ />
3. 在执行数据库操作前,先写这句话设置好编码;
mysql_query('set names utf8');
然后在进行数据库操作:
$result = mysql_query($query, $db) or die(mysql_error($db));
这样,把数据库操作的结果打印在网页上时就不会乱码了。
Tags: mysql, PHP, 源码解决mysql输入中文乱码问题
在php中写代码创建table时,如果输入中文字段出现乱码,是选择的编码错误,可以在sql语句中插入下面两句之一:
character set utf8 COLLATE utf8_general_ci
或:
character set gbk collate gbk_chinese_ci
例(php):
//创建类别表
$query = 'CREATE TABLE IF NOT EXISTS classes
(class_id INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
class_name VARCHAR(20) NOT NULL DEFAULT "",
PRIMARY KEY (class_id)
)
ENGINE = MyISAM
character set utf8 COLLATE utf8_general_ci';
mysql_query($query, $db) or die(mysql_error($db));
Tags: mysql, PHP, 技巧, 源码php5.3开始出现的ereg() is deprecated Error问题原因及解决办法
PHP 5.3 ereg() 无法正常使用,提示“Function ereg() is deprecated Error”。问题根源是php中有两种正则表示方法,一个是posix,一个是perl,php6打算废除posix的正则表示方法所以后来就加了个 preg_match。此问题解决办法很简单,在ereg前加个过滤提示信息符号即可:把ereg()变成@ereg()。这样屏蔽了提示信息,但根本问 题还是没有解决,php在5.2版本以前ereg都使用正常,在5.3以后,就要用preg_match来代替ereg。所以就需要变成这样,原来:
ereg(“^[0-9]*$”,$page)
变成:
preg_match(“/^[0-9]*$/”,$page)
特别提醒:posix与perl的很明显的表达 区别就是是否加斜杠,所以与ereg相比,后者在正则的前后分别增加了两个”/”符号,不能缺少。
Tips:此问题在php5.2之前版本不会出 现。
另外,找了一个老外写的关于这个问题替换函数的源码,在这里一块共享一下: Continue reading
Tags: IT, PHP, 源码


