• ----:)欢迎访问源码网(:----
    • 首页
    • 博客
    • 学院
    • 下载
    • 论坛
    • 影视
    • 发布源码
    • RSS
    • ITPig
    • 笑话网
    • 百家姓
    • 繁體中文

源码网 - 中国第一源码门户
选择镜像:网通镜像 - 电信主站
  • 首 页
  • 新闻动态
  • 网站运营
  • 网页制作
  • WEB开发
  • 编程开发
  • 图像媒体
  • 操作系统
  • 数据库
  • 服务器
热门搜索 优化 SEO 故事 cms IIS7 MySQL 个人 AdSense 主题推广 | 文章搜索: 高级搜索
会员登录/控制面版您的位置: 学院首页 >> WEB开发 >> PHP 开发 >> PHP精通 >> 详细内容
 

推荐文章

  • PHP 程序加速探索
  • 用封装类来合理的设计PHP项目--谈PHP项目中类的封装
 
 

热点文章

  • 30分钟学会用PHP写带数据库的简单通讯录
  • 结合AJAX进行PHP开发之入门
  • 最强的PHP字符串截取函数
  • 汉字编码问题
  • PHP向脚本提交POST数据
  • 中文字符集与字符编码的基础知识
  • PHP实现验证码一法
  • php模板smarty
  • php如何隐藏图片的真实地址
  • PHP 程序加速探索
  • php防盗链的方法
  • 用封装类来合理的设计PHP项目--谈PHP项目中类的封装
 
 

相关文章

  • PHP使用zlib扩展实现页面GZIP压缩输出
  • 为什么PHP令人不爽(对于大型系统)
  • php中的stdClass
  • php中ADODB类使用
  • php自动post数据--百度贴吧灌水机器人代码实例
  • Linux/FreeBSD下用C语言开发PHP的so扩展模块例解
  • php取不到session的常见原因
  • 使用php的zlib压缩和解压缩swf文件
  • php 做服务器端程序
  • PHP5.2下function和class性能对比
  • PHP用mkdir()新建立目录无写的权限的问题
  • mysql的bigint类型与php的mysql_insert_id函数造成的b..
 
 

百度搜索

 
 

PHP大型Web应用入门(十一)

  • 阅览次数:
  • 文章来源: http://goodlinuxer.bokee.com/
  • 原文作者: 静水人生
  • 整理日期: 2008-07-28
  • 发表评论
  • 字体大小:
  • 小
  • 中
  • 大

//后续

Cache的目的是可以脱离数据库,所以用什么语言查询生成缓存都没关系
PHP直接连接操作MySQL的效率是很好的。C并不是很适合做Web,虽然有过很多人用C做CGI。它的好处是可以跑多线,可以底层地处理数据,可以做算法,缺点是开发效率太低。

至于C语言连接MySQL,你会发现它和PHP如此相象,因为本来就是用的同样的mysql.h...
Just Like this:
 

<?php
//Includes...
#include<windows.h>
#include<MySQLmysql.h>
#include<stdlib.h>
#include<stdio.h>
#include<conio.h>

//Databasename...
charg_szHost[]="localhost";
UINTg_unPort=MYSQL_PORT;
charg_szUserName[]="charlieface";
charg_szPassword[]="pudgy";
charg_szDatabase[]="Candy";
charg_szSQLStatement[]="SELECT*chocolates";

//Entrypoint...
intmain(intnArguments,char*pszArguments[])
{
//Variables...
MYSQL*myDatabase=NULL;
MYSQL_RES*myResult=NULL;
MYSQL_FIELD*myField=NULL;
MYSQL_ROWmyRow=NULL;
UINTunRecords=0;
UINTunFields=0;
UINTunIndex=0;
UINTunFieldIndex=0;

//InitializeMySQL...
myDatabase=mysql_init(NULL);

//Failed...
if(!myDatabase)
{
//Alertuser...
printf("]Error:UnabletoinitializeMySQLAPI...n");

//Cleanup,abort,terminate...
mysql_close(myDatabase);
getch();
return
0;
}

//Connecttoserverandcheckforerror...
if(mysql_real_connect(myDatabase,g_szHost,g_szUserName,g_szPassword,
NULL,g_unPort,NULL,0)!=0)
{
//Alertuser...
printf("]Error:Unabletoconnecttoserver...n");

//Cleanup,abort,terminate...
mysql_close(myDatabase);
getch();
return
0;
}

//Selectdatabaseinserverandcheckforerror...
if(mysql_select_db(myDatabase,g_szDatabase)<0)
{
//Alertuser...
printf("]Error:Unabletoselectdatabase...n");

//Cleanup,abort,terminate...
mysql_close(myDatabase);
getch();
return
0;
}

//Querydatabaseandcheckforerror...
if(mysql_query(myDatabase,g_szSQLStatement)!=0)
{
//Alertuser...
printf("]Error:Unabletoexecutequery...n");

//Cleanup,abort,terminate...
mysql_close(myDatabase);
getch();
return
0;
}

//Retrievequeryresultfromserver...
myResult=mysql_store_result(myDatabase);

//Failed...
if(!myResult)
{
//Alertuser...
printf("]Error:Unabletoretrieveresult...n");

//Cleanup,abort,terminate...
mysql_close(myDatabase);
getch();
return
0;
}

//Howmanyrecordswerereturnedintheresultset?

//Calculate...
unRecords=mysql_num_rows(myResult);

//Alertuser...
printf("]Query:%drecordsfound...n",unRecords);

//Howmanyfieldsarepresentinarecord?

//Calculate...
unFields=mysql_num_fields(myResult);

//Alertuser...
printf("]Query:Thereare%dfieldsineachrecord...",unFields);

//Outputrecords...
for(unIndex=0;unIndex<unRecords;unIndex++)
{
//Fetchrowfromresults...
myRow=mysql_fetch_row(myResult);

//Fetchfieldsfromrow...
myField=mysql_fetch_fields(myResult);

//Showrecord...
printf("]Record:%d/%dn",unIndex,unRecords);

//Outputallfieldsinthisrow...
for(unFieldIndex=0;unFieldIndex<unFields;unFieldIndex++)
{
//Output...
printf("t%s",myField[unFieldIndex].name);
}
}

//Freeresult...
mysql_free_result(myResult);

//Closeserverconnection...
mysql_close(myDatabase);
myDatabase=NULL;

//Alertuser,exit...
printf("]Done,pressanykeytoexit...n");
getch();
return
0;
}
?>

 

这是Dev-Cpp的Example,看过之后,发现这几个函数~呵呵
如果你再看看PHP里mysql扩展的源码,更会发现,它到C原始lib的转换是如此直接。

上一篇:PHP使用zlib扩展实现页面GZIP压缩输出
下一篇:构建支持Master/Slave读写分离的数据库操作类
  • 网友评论:
  • 查看所有评论
  • 我要发表评论
您的网名:
留言主题:
你要发表的内容:

 

关于本站 | 广告联系 | 版权声明 | 网站地图 | 发布软件 | 帮助中心 | 源码论坛

Copyright © 2005-2007 CodePub.Com  程序支持:木翼  滇ICP备05005971号