日期:2013-05-03  浏览次数:20630 次

这一章我们就来看看 FleaPHP 的数据库访问功能。体验一下 FleaPHP 出色的自动化 CRUD 能力。



连接数据库

在 htdocs 目录中创建子目录 testDB,并在子目录下创建文件 test1.php 文件,内容如下:

<?phprequire('../FLEA/FLEA.php');__FLEA_PREPARE();// 准备数据库连接信息$dsn = array(    'driver'        => 'mysql',    'host'          => 'localhost',    'login'         => 'root',    'password'      => '',    'database'      => 'test',);// 获取数据库访问对象$dbo =& get_dbo($dsn);// 连接到数据库if ($dbo->connect()) {    echo 'Connect to database successed.';}?>

请注意这里我们没有调用 run() 函数。因此我们需要调用 __FLEA_PREPARE() 函数来初始化 FleaPHP 运行环境。并且 __FLEA_PREPARE() 函数应该在用 register_app_inf() 或 set_app_inf() 修改应用程序设置后调用。

现在启动 APM Express,通过浏览器执行 http://localhost/testDB/test1.php,如果一切正常,应该看到 Connect to database successed 信息。

如果出现如下的错误信息,说明 MySQL 数据库的 root 用户密码不正确。请修改上面代码中的 password 信息。

Warning: mysql_connect() [function.mysql-connect]: Access denied for user 'root'@'localhost'


创建记录

接下来,我们用 phpMyAdmin 在 test 数据库中执行下面的 SQL 语句。这会创建在 test 数据库中创建一个名为 posts 的表。

CREATE TABLE `posts` (  `post_id` int(11) NOT NULL auto_increment,  `title` varchar(255) NOT NULL,  `body` text NOT NULL,  `created` int(11) default NULL,  `updated` int(11) default NULL,  PRIMARY KEY  (`post_id`)) DEFAULT CHARSET=gb2312;

现在我们修改 test1.php 的内容为以下内容:

<?phprequire('../FLEA/FLEA.php');// 准备数据库连接信息$dsn = array(    'driver'        => 'mysql',    'host'          => 'localhost',    'login'         => 'root',    'password'      => '',