一切福田,不離方寸,從心而覓,感無不通。

Category Archives: Programming Language

十天学会PHP之第四天

  学习目的:学会连接数据库 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数据库。在实际应用中应当加强点错误判断。 今天就说到这里,明天再说一下数据库的读取。 

龙生   18 May 2012
View Details

十天学会PHP之第三天

  学习目的:学会构建数据库 在ASP中,如果是ACCESS数据库你可以直接打开ACCESS来编辑MDB文件,如果是SQL SERVER你可以打开企业管理器来编辑SQL SERVER数据库,但是在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语句即可。 今天就说到这里,明天继续说数据库操作。

龙生   18 May 2012
View Details

十天学会PHP之第二天

  学习目的:掌握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 […]

龙生   18 May 2012
View Details

IIS6整合PHP详解

 在iis上配置PHP是一件很容易的事,只要稍作几部设置就可以完成iis整合php的设置!下面给大家介绍下iis下整合php的详细教程: 将PHP压缩包解压到某个位置,一般为 C:\PHP 将php.ini-dist改名为php.ini,放到C:\windows目录下,注意php.ini上的权限,如果虚拟主机设置了权限去除了windows目录下的users,那么复制过去的php.ini是没有权限的,所有dll会无法加载php.ini中修改 extension_dir = "C:\php\ext" 设置PHP存放扩展的dll文件的路径建立一个存放session的目录,比如为sessions在php.ini中修改 session.save_path = C:\php\sessions" 设置session存放在指定的这个目录建立一个存放上传文件的临时目录,比如为temp(要求该目录的父目录有列文件夹的权限,否则也会有权限问题)在php.ini中修改 upload_tmp_dir = "C:\PHP\temp"给整个PHP目录users的读权限,给sessions目录和temp目录的users的读写权限将output_buffering=Off改为output_buffering=On ,开启输出缓冲开启后可以解决一些网站打开报错或打开空白的情况,并且不会对其他正常网站造成不良影响。—————————————————————--开启常用的扩展,即去掉相应;extension=XXX.dll前面的分号下面为常用扩展extension=php_curl.dllextension=php_gd2.dll        ;图形处理用,比如图片缩放,水印extension=php_mbstring.dll   ;phpmyadmin需要extension=php_mcrypt.dllextension=php_mhash.dllextension=php_mssql.dll      ;sqlserver需要extension=php_mysql.dll      ;mysql需要extension=php_mysqli.dll     ;同上extension=php_pdo.dllextension=php_pdo_mssql.dllextension=php_pdo_mysql.dllextension=php_pdo_sqlite.dll—————————————————————--ISAPI方式:在IIS的web服务扩展里,添加一条扩展指向C:\php\php5isapi.dll文件,设置为允许在IIS的“网站--主目录--配置--应用程序扩展”里,添加.php的扩展名指向C:\php\php5isapi.dll(与CGI方式二选一,建议使用此方法)给PHP目录加上users的读权限给整个PHP目录加上users的读权限(其实是需要加network service权限就可以),如果用ISAPI模式,是需要有这个权限的,CGI的不需要使用此方式,c:\windows\php.ini文件必须有network service的读权限。CGI方式:在IIS的web服务扩展里,添加一条扩展指向C:\php\php-cgi.exe文件,设置为允许在IIS的“网站--主目录--配置--应用程序扩展”里,添加.php的扩展名指向d:\php\php-cgi.exe(与ISAPI方式二选一,不建议)给PHP目录加上users的读权限php.ini里设置cgi.force_redirect = 0,这个值不设置时默认为1,用CGI必须设置为0—————————————————————--支持mysql除了开启php_mysql.dll扩展外,还要将PHP目录下的libmysql.dll复制到c:\windows\system32下支持MSSQL(可以不设置)除了开启php_mssql.dll扩展外,还要将ntwdblib.dll文件复制到c:\windows\system32下注意:PHP里自带的这个文件的版本不对,是连接不了的,要使用所连接的SQL Server安装目录下的ntwdblib.dll文件的版本。2000数据库对dll文件版本有要求,2005的话,似乎用任意版本的dll都可以连。—————————————————————--支持curl除了php.ini开启curl扩展外,还要将libeay32.dll, ssleay32.dll这两个文件放到system32文件夹下才可以 —————————————————————-- 支持mcrypt除了php.ini开启mcrypt扩展外,还要将libmcrypt.dll放到system32文件夹下才可以 —————————————————————-- 其他设置一般为默认不动,用户需要时再设置post_max_size = 8M               默认是8Mupload_max_filesize = 2M         默认是2M开启全局变量register_globals = Off           默认不开启加大超时时间限制max_execution_time = 30          默认是30秒 或者设置其他内容等 按照以上的方法做完以后,如果可以打开php页面的话,那么说明你的iis下整合php配置成功了  本文章由中国数据(www.zgsj.com)--http://zhidao.zgsj.com原创,转载请保留此句

龙生   18 May 2012
View Details

Zend Studio百度百科

 Zend Studio简介     Zend Studio是Zend Technologies开发的PHP语言集成开发环境(Integrated Development Environment IDE)。也支持HTML和js标签,但只对PHP语言提供调试支持。因为是同一个公司的产品,所以提供的Zend Framework方面的支持比其他软件好。Zend Studio5.5系列后,官方推出利用了Eclipse平台,基于PDT的Zend Studio for Eclipse 6.0,之后的版本也都构建于Eclipse。   Zend Studio是屡获大奖的专业 PHP 集成开发环境,具备功能强大的专业编辑工具和调试工具,支持PHP语法加亮显示,支持语法自动填充功能,支持书签功能,支持语法自动缩排和代码复制功能,内置一个强大的PHP代码调试工具,支持本地和远程两种调试模式,支持多种高级调试功能。   Zend Studio特点     1.快速代码开发与配置本地和远程调试器;   2.数据库连通性 & SQL工具 团队合作环境;   3.完全 PHP 4/PHP 5 切换 PHPDocs/PHP文档处理程序支持SFTP, FTP以至SSH的安全连接 100个以上代码摘录;   4.50个以上样品数据库应用程序 与Zend Platform组合。   Zend Studio产品特征     Zend Studio 设计时考虑了商务应用开发的需要,是开发者利用PHP创造强有力数据库应用软件的完美开发环境。Zend Studio 具有专业和企业开发者开发、配置、调试和管理关键商务PHP应用的易使用性、可伸缩性、可靠性和扩展性。   1.PHP最强有力的开发环境提高生产力:通过完全的PHP5支持、编码分析器、编码组合功能、语法检索、项目管理器、编码编辑器、绘图调试器(向导)。超强智能编码:具备新的和更优秀的分析和优化工具像PHP编码检测器,。PHP的标准记录工具--PHP文档记录器:非常容易记录PHP代码、程序应用和方案。FTP和SFTP组合简化配置,使开发者安全地从远程服务器灵活的上载和下载项目文件。   2.高水平的商务应用开发直接链接最广泛使用的专业数据库,像IBMDB2/Cloudscape/Derby、MySQL、Oracle、MicrosoftSQL Server, PostgreSQL和 SQLite。通过使用带 SQL92 和 语法检索支持的Zend SQL Query Editor,到被链接服务器上进行写和执行程序的访问。用 Zend SQL Explorer 观看数据库结构和管理内容。   3.PHP完整的调试环境先进的调试特征优势,包括:Conditional Breakpoints, Stack Trace View, Advanced Watches, Variables and Output Buffer利用最强大的PHP调试器在本地或远程调试本地的环境。对于本地调试或者是基于互联网的远程调试都能够确保安全连接用“一次点击浏览器调试”从浏览器直接调试和分析编码。   4.强有力的团队开发和管理工具从 Zend Studio 内直接应用 CVS,通过有效地管理源代码 ,容易进行团队的开发与合作。利用综合性能编辑器,监视访问功能,优化应用程序的总体性能。Zend Studio 与 Zend Platform 结合使用时,可以实时获得代码和脚本性能的反馈。ZEND STUDIO 为流行的 SQL 数据库包括 […]

龙生   18 May 2012
View Details

Zend Framework

        Zend Framework (简写ZF)是由 Zend 公司支持开发的完全基于 PHP5 的开源PHP开发框架,可用于开发 Web 程序和服务,ZF采用 MVC(Model–View-Controller) 架构模式来分离应用程序中不同的部分方便程序的开发和维护。           Zend Framework 是用于 PHP 开发 Web 应用程序和 Web Service 程序的高品质开源框架。   利用 PHP 自身特性,Zend Framework 有很高的易用性和强大的功能。它提供了先进、健壮和安全的开发网站的解决方案。   ZF中的组件可以独立使用,但如果将它们组合起来,就形成了一个强大而可扩展的web开发框架。 ZF 提供了强壮而高效的 MVC实现,易于使用的数据库摘要和实现 HTML 表单解析、校验和过滤的表单组件,这样 开发者可以通过这些易用的、面向对象的接口联合所有这些操作。其它组件如 Zend_Auth和 Zend_Acl通过通用 的证书(credential)存储提供用户认证和授权。还有其它实现的客户库来简化访问最流行的可用的 web 服务。 不论你的程序需要什么,你都可能从 Zend Framework 中找到经过全面和严格测试的组件来使用,可以极为有效地减少开发时间。   Zend Framework 项目的主要赞助者是 Zend Technologies,但许多 其它公司也贡献了组件或重大功能。例如 Google、 Microsoft 和 StrikeIron 作为伙伴提供了 web 服务接口和其它 希望给 Zend Framework 开发者使用的技术。   没有活跃的 ZF 社区,Zend Framework 就不能交付和支持所有这些功能。社区成员包括贡献者都可以在这些地方找到: mailing lists, IRC channels 和其它论坛。无论你有什么关于 ZF 的问题,在社区里总能找到答案。     代码完全采用PHP5 面向对象编写;丰富完善的组件支持;良好的 Ajax 支持;   模块化的结构设计,易于扩展;完善的文档资料;灵活的架构设计;   MVC是提高程序的可维护性的方法:将这个程序代码分为MVC三个部分 模型   关心的是欲显示的数据细节。关注的应用程序的业务逻辑部分,关注的是如何使用数据库来读取和保存数据。 […]

龙生   18 May 2012
View Details

十天学会PHP之第一天

  以前写了十天学会ASP,十天学会ASP.NET什么的,现在想想再写个PHP吧,也算比较全了。 PHP的调试方法我这里就不说了,外面很多文章都有介绍,也有很多不同的组合。我这里暂时是以 Apache web server 和 MY SQL 作为WEB服务器和数据库,在php-4.3.3下的环境做的程序。当然要简单的构建和访问查看数据库 PHPMYADMIN 不可少。 至于表单设计什么的,我这里也不想多说了,在《十天学会ASP》中已经有介绍。 下面简单介绍一下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 "这是第一种例子。\n" ; // 本例是 C++ 语法的注释 /* 本例采用多行的 注释方式 */ echo "这是第二种例子。\n" ; echo "这是第三种例子。\n" ; # 本例使用 UNIX Shell 语法注释 ?> 4、变量类型: $mystring = "我是字符串" ; $NewLine = "换行了\n" ; $int1 = 38 ; $float1 = 1.732 ; $float2 = 1.4E+2 ; $MyArray1 = array( "子" , "丑" , "寅" , "卯" ); 这里引出两个问题,首先PHP变量以$开头,第二PHP语句以;结尾,可能ASP程序员会不适应。这两个遗漏也是程序上大多错误所在。 5、运算符号: 数学运算: 符号 意义 + 加法运算 – 减法运算 * 乘法运算 / 除法运算 % 取余数 ++ 累加 — 递减 字符串运算: 运算符号只有一个,就是英文的句号。它可以将字符串连接起来,变成合并的新字符串。类似ASP中的& <? $a = "PHP 4" ; $b = "功能强大" ; echo […]

龙生   18 May 2012
View Details

.NET Framework 4.0的新特性

 本文将揭示.NET 4.0中的3个新特性:图表控件、SEO支持以及ASP.NET 4可扩展的输出缓存。 图表控件 微软向开发者提供了大量可免费下载的图表控件,可以在.NET 3.5 ASP.NET或WinForms项目中使用这些控件。要想在Visual Studio 2008中使用这些控件则需要安装一个插件,该插件提供了VS工具箱及智能集成功能。现在这些控件已经集成到了.NET 4.0中,这样就无需再去下载额外的插件了。Samples Environment for MS Chart Controls提供了这些控件的使用示例。下图是示例的运行截图:   ASP.NET 4.0 SEO 微软发布了一个SEO Toolkit并集成到了IIS 7中,同时可以在IIS Manager中运行。除了可以创建站点地图和地图索引外,该工具集还能够从SEO的视角分析站点情况,在出现SEO规则违例时生成报告:创建错误描述并给出进一步的改进提示。这些规则有:重复的文件、重复的标题、没有内容、过多的内容等等。该工具集会从性能视角分析站点,识别出运行缓慢或是会访问很多资源的页面。我们还可以通过增加自定义规则来扩展该工具集。 虽然该SEO Toolkit需要运行在IIS Manager上,但并不需要在服务器上安装别的东西。此外,它还可以对所有操作系统上的所有Web服务器进行分析。Scott Guthrie总结了可以进一步提升SEO的ASP.NET 4.0中的新特性,如下: ◆Page.MetaKeywords与Page.MetaDescription; ◆ASP.NET Web Forms的URL Routing支持; ◆Response.RedirectPermanent()。 我们可以通过Page类的MetaKeywords和MetaDescription属性以编程的方式设定站点的关键词和描述。Guthrie阐述了这么做的意义所在: ASP.NET 4.0的<head>服务器端控件会在输出页面的<head>部分时使用到他们,这对于使用了母板页的站点非常有用——<head>部分位于.master文件中,这就与包含了具体页面内容的.aspx文件独立开来,现在可以在.aspx页面中设定新的MetaKeywords和MetaDescription属性并通过母板页中的<head>控件自动生成其值。URL Routing会将外部URL转换为内部的。通过这种方式,站点可以公开SEO友好的URL,但却可以在内部使用不同的链接。这对于遗留站点来说非常有用。 我们应该使用Response.RedirectPermanent()方法而非Response.Redirect(),因为后者会生成一个临时的重定向,这导致搜索引擎在多个重定向之间跳跃,降低了页面的等级。Guthrie解释了RedirectPermanent()的工作方式: ASP.NET 4.0引入了一个全新的Response.RedirectPermanent(string url)辅助方法,可以通过HTTP 301(moved permanently)响应进行重定向。这样,搜索引擎和其他能够识别出永久重定向的user agents就会存储并使用与内容关联的新URL。这么做会为页面内容加上索引,同时提升搜索引擎对页面的PR(Page Ranking)值。   ASP.NET 4.0输出缓存 自从1.0开始,ASP.NET就拥有了一个输出缓存来存储页面和资源以提供更快的响应速度,但存储位置只能在内存中。ASP.NET 4.0提供了一个扩展点,可以在本地/远程磁盘、数据库、分布式缓存引擎(如velocity、memcached)甚至是云中增加多个缓存。 转自:51cto.com   原文标题:三方面诠释.NET 4.0的新特性

龙生   16 May 2012
View Details

C#进制转换

       //十进制转二进制Console.WriteLine("十进制166的二进制表示: "+Convert.ToString(166, 2));//十进制转八进制Console.WriteLine("十进制166的八进制表示: "+Convert.ToString(166, 8));//十进制转十六进制Console.WriteLine("十进制166的十六进制表示: "+Convert.ToString(166, 16)); //二进制转十进制Console.WriteLine("二进制 111101 的十进制表示: "+Convert.ToInt32("111101", 2));//八进制转十进制Console.WriteLine("八进制 44 的十进制表示: "+Convert.ToInt32("44", 8));//十六进制转十进制Console.WriteLine("十六进制 CC的十进制表示: "+Convert.ToInt32("CC", 16)); 

龙生   14 May 2012
View Details

C#里WinForm程序启动时不显示主窗体的方法

注:转载的一篇文章,我用的是第三种方法,通过重载SetVisibleCore,实现窗体的启动就不显示,也不闪烁一下。 看了两篇文章(1和2),然后把文中的代码整理了以下,文中所述WinForm程序启动时不显示主窗体的实现方法主要有以下5种,个人觉得第五种最简单,而且效果也不错,第四种方法也值得推荐。   实现代码及简短解释如下: //隐藏窗体的方法1/5:不指定任何窗体为主窗体//注意:通常,在一个程序中,关闭主窗体,就可以关闭应用程序。//但是在没有主窗体中,不行。//只能使用Application.Exit()才能关闭应用程序。//using可以保证Application结束前,关闭MyMainFormusing (new Form1()){ Application.Run();};//Application.Run(new Form1());   //隐藏窗体的方法2/5://通过close()关闭主窗口同时可以关闭应用程序     //隐藏窗体的方法4/5 part1/2: 推荐使用!!!//ApplicationContext实质上就是一个Application与主窗体之间的连接器, //掌管着二者之间的互动关系。其中最主要的,就是负责在主窗体//关闭时结束线程。既然如此,我们只要根据需要自定义一个ApplicationContext就可以了   this.mainFormInternal .Closed += new EventHandler(mainFormInternal_Closed);}     protected override CreateParams CreateParams{get{Hide();return base.CreateParams;}}//隐藏窗体的方法3/5://这种方法仍然不能用Close主窗口的方式来关闭应用程序, 还得使用Application.Exit。protected override void SetVisibleCore( bool value){base.SetVisibleCore(false);}//注意:方法2和3 使用Show好像没办法调出主窗口,比较郁闷。internal class HideOnStartupApplicationContext : ApplicationContext{private Form mainFormInternal;// 构造函数,主窗体被存储在mainFormInternalpublic HideOnStartupApplicationContext( Form mainForm){this.mainFormInternal = mainForm;// 当主窗体被关闭时,退出应用程序void mainFormInternal_Closed(object sender, EventArgs e ){Application.Exit(); }}//在Main中作如下修改: HideOnStartupApplicationContext context = new HideOnStartupApplicationContext( new Form1());Application.Run(context );//隐藏窗体的方法5/5: 推荐使用!!!//在构造函数中或者直接设置form属性this.ShowInTaskbar = false;this.WindowState = FormWindowState.Minimized;   程序中配合notifyIcon 控件一起使用,效果很好! 以上代码在VS2005下编译通过。  

龙生   14 May 2012
View Details
1 164 165 166 174