« 类别 PHP/Mysql 下的文章

PHP编码规范[转]

一、 变量命名 a) 所有字母都使用小写 b) 首字母根据变量值类型指定 i. 整数i ii. 浮点数f iii. 字符串s iv. 布尔值b v. 数组a vi. 对象o vii. 资源r viii. 混合类型m c) 使用’_’作为每一个词的分界 例如: $i_age_max = 10; $f_price = 22.5; $s_name =‘harry’; $b_flag = true; $a_price = array(); $o_object = new class(); $r_file = fopen(); $m_var = array_combine($a_name, $a_flag); 二、 类命名 a) 使用大写字母作为词的分隔,其他的字母均使用小写,即驼峰格式。 b) [...]

php实现无限级分类菜单

一般的网站都会用到导航菜单,主菜单下面会有子菜单,子菜单下面还会有子菜单,这个就会产生多级菜单。如果结合后台数据库,就可以实现菜单分类的动态更新。但从数据库里读取的菜单只是一个数组,并没有按照想要的规则排序,如果找到多级子菜单,这需要用到递归调用。 下面代码中用到了一些自定义的函数addRecord(),br()等。网上有很多类似的代码,下面代码及思路供参考。 数据库记录: category_id category_name category_parent category_class 1 女士 0 0 2 男士 0 0 3 上衣 1 1 4 裤子 1 1 5 上衣 2 1 6 裤子 2 1 7 小孩 0 0 8 上衣 7 1 省略…… 连接数据库读取数据: [code][/code] 显示结果: [code]Array ( [0] => Array ( [0] => 1 [category_id] => 1 [...]

php截取字符串函数

1. 截取GB2312中文字符串 2. 截取utf8编码的多字节字符串 3. UTF-8、GB2312都支持的汉字截取函数 4. BugFree 的字符截取函数 转载自CSDN博客:http://blog.csdn.net/tzsmin/archive/2008/12/16/3528414.aspx

PHP列出数据库、数据表名、字段名方法

PHP安全之数据过滤

网站的安全问题是很重要的,一般情况下网站被入侵主要是一下几个方面: 1.直接拿下服务器账号,登录进入服务器。 2.得到网站的web管理账号,进入网站后台 3.无法得到任何账号,利用漏洞执行命令操作 为了保证网站的正常运行,对于通过提交的内容,需要一些过滤,下面是一些常用的过滤方法。 1. addslashes()函数 (PHP 3, PHP 4, PHP 5) addslashes — 使用反斜线引用字符串 string addslashes ( string str ) 这些预定义字符是: 单引号 (') 双引号 (") 反斜杠 (\) NULL [code] [/code] [code] if (!get_magic_quotes_gpc()){ writeln("get_magic_quotes_gpc is off"); add_slashes($_GET); add_slashes($_POST); add_slashes($_COOKIE); foreach(add_slashes($_GET) as $key=>$value){ writeln($key."=>".$value); } writeln(add_slashes($_GET)); }else{ writeln("get_magic_quotes_gpc is on"); } function add_slashes($string) { [...]

ZenCart模板制作参考

Zen Cart的模板设计比较复杂,需要一定的时间来熟悉。一旦你了解了它的结构,就会慢慢习惯了。 首先要阅读常见问答部分的:如何添加、制作新模板。 Zen Cart的设计没有什么特别,与以前设计HTML页面是一样的。只是整个页面分成了好几个部分,并加入了PHP代码。 通常,页面分为页眉(header),页脚(footer),边框(sideboxes)。所以设计页面的时候,要记住Zen Cart是如何组织这些页面的。 页面是通过CSS样式表来控制的。样式表控制表格单元的背景图案、字体的颜色和样式等等。所以,假如你需要修改边框标题栏的字体,那么查看样式表文件。 Zen Cart在页面添加图像有两种方式。可以使用图像目录的相对路径,或者在模板中用php变量定义图像。如果你使用https服务器,并且采用相对图像路径,那么https的图像目录下也要有同样的图像,否则https服务器很可能会给出警告提示。 Zen Cart可以设置成任意的html/flash的界面,只是比通常的html页面的设计费时。你可以从修改缺省的模板开始,先修改CSS文件和三栏格式的界面。开始先采用不同的颜色,很快就可以设计出完全不同的风格。 最后,在设计模板前要先计划好你网页的内容,事半功倍。 下面是zen cart页面各部分相对应模板文件的一个列表: [html] 文件路径 注释 index.php 主文件 includes/templates/[custom template folder]/common/html_header.php 页面的head部分 includes/templates/[custom template folder]/common/tpl_main_page.php 页面的body部分 includes/templates/[custom template folder]/common/tpl_header.php 所有页面的页眉 (column left) includes/templates/[custom template folder]/common/main_template_vars.php 决定页面的内容部分,缺省为 'tmp_index_default.php' 首页 – 缺省 includes/templates/[custom template folder]/templates/tmp_index_default.php 首页模板文件 首页 – 显示分类 includes/templates/[custom template folder]/templates/tpl_index_categories.php 首页上显示分类时的模板文件 includes/modules/[custom template [...]

php导入txt数据到mysql

利用php可以将格式化的文本数据导入到mysql数据库中,方法如下: [code] [/code] 不过需要注意的是,txt文本数据的格式化必须要规范、完整。 例如: 数据1-数据1.1-数据1.2 数据2-数据2.1-数据2.2 数据3-数据3.1-数据3.2 这样的数据以“-”来分隔,使用起来很方便。 若数据格式为: 数据1-数据1-1-数据1-2 数据2-数据2-1-数据2-2 数据3-数据3-1-数据3-2 这样的格式化就很失败,以“-”来分隔会造成不必要的麻烦,不过这样还算有规律,稍加判断就可以解决问题。 如果格式化为: 数据1-数据1-1-数据1-2 数据2-数据2.1-数据2-2 数据3-数据3.1-数据3.2 这样就非常失败了,处理起来要麻烦很多,对于有限的数据,用程序仍然可以解决,如果数据成千上万行,又不能很容易找出其规律性,那结果将会很糟糕,带来很多麻烦,还可能会造成数据的转换错误或丢失。

分享一个国外免费PHP空间(快速)

在网上找了一个国外的免费空间,速度很快,分享一下,需要的自己去申请就可以了,申请过程很简单。 空间配置如下: 1. 250M空间 2. 6G月流量 3. 10M数据库(Mysql) 4. 7*24小时技术支持 5. 访问稳定性99.9% 6. 可以托管5个顶级域名,15个二级域名,停放50个域名 7. 自主DNS管理 8. FTP访问管理 9. 可以一键安装(WordPress等40多种程序) 10. 空间无广告 11.phpadmin自主管理 12.后台管理支持中文 主机详情可以看这里:http://www.freehostia.com/free-chocolate.html 其实这个空间配置上并不算好,10M的数据库的确有点小了,但国外一些配置较高的免费空间(比如10G空间,100M数据库等)往往会有很多问题,一是访问速度慢,二是不稳定。相比那些不太稳定的空间,这个速度真的是快多了,稳定性也好。可以当做测试空间用,或是放一些简单博客。此空间使用期限为一年。

结合AJAX的PHP开发之后退、前进和刷新

简介   第 1 部分介绍了如何用 Sajax、PHP 和 JavaScript 开发基本的相册。在为应用程序建立历史堆栈的过程中,我们将依靠客户端技术,并将其直接与第 1 部分的代码结合在一起。本文假设读者了解 JavaScript 和浏览器 cookie。   在浏览器中保存状态   在网上冲浪的时候,总是从一个页面到另一个页面,从一个站点到另一个站点。在这个过程中,Web 浏览器忠实地记录了您曾经到过何处的历史记录,创建了一条面包屑型(breadcrumbs)数字轨迹,沿着这条轨迹能够一步一步地回到出发点。后退按钮允许您回到上一个动作之前所在的位置,从这个意义上说它就是 Web 上的撤销按钮。   Web 是一种按页划分的的媒体。浏览器工具栏中的后退和前进按钮指引着浏览器从一个页面移动到另一个页面。当 Macromedia 的 Flash 风行一时的时候,开发人员和用户发现富互联网应用程序(Rich Internet Application,RIA)打破了这种模式。用户可以在几个站点上浏览,然后登录一个基于 Flash 的网站,在这个网站上消磨几分钟。当用户单击后退按钮时,游戏结束了。用户没有回到先前的那个 Flash 站点,完全不知道到了什么地方。   对于完全基于 Ajax 的网站 —— RIA 的另一种形式,情况也是如此。允许用户与一个页面进行多次交互的网站很容易受到后退按钮的困扰,或者受到任何历史记录按钮的困扰(就此而言)。前进和重载按钮的问题与后退按钮的问题一样。 Web 浏览器内置的内部历史记录机制是一个不可逃避的问题。出于安全的原因,开发人员不能篡改浏览器历史记录或者任何相关按钮。还有可用性的问题。设想一下,如果后退按钮突然弹出一个神秘的警告提示或者用户被打发到一个新的网站上去,用户该是多么困惑。   构建历史堆栈   虽然不能改变浏览器历史记录,但是可以自己构建一个在 RIA 中使用的历史记录。显然,它在某种程度上应该与浏览器的标准导航工具分开,但正如前面所说的,富应用程序在一定程度上背离了 Web 的页面到页面的标准模式。   我们将建立一个堆栈来管理应用程序的历史事件记录,也就是说存储一个列表,在表的最后添加元素。堆栈用于按照后进先出(LIFO)的顺序存储数据。虽然回退的时候并没有删除堆栈顶部的数据,但这个模型跟我们的需要非常接近。在 JavaScript 中,堆栈可以用数组来管理。   与堆栈在一起的还有一个指针,指示我们在堆栈中的当前位置。当我们在应用程序中单击的时候,新的事件将被压入堆栈顶部,指针指向最后添加的元素。单击应用程序的后退和前进按钮时,不会在堆栈中添加新的事件,而是移动堆栈的指针。 想一想使用后退按钮时历史堆栈中会发生什么:浏览器返回上一次查看的页面,原来不能用的前进按钮突然之间变得可用了。浏览新的页面时,前进按钮再次变成灰色。浏览器历史记录中较晚保存的元素将被弹出堆栈,新的事件被压入堆栈顶部。我们将在自己创建的历史堆栈中再现这种行为。   我们的目标是创建一组可用的历史记录按钮:后退、前进和刷新,如图 1 所示。 图 1. 后退、前进和刷新的历史记录按钮显示在左侧,不可用状态显示在右侧 [...]

php实现简单的数据搬迁功能

网上经常可以看到很多博客搬家工具,不同的博客平台的数据,可以搬家到另外的一个博客系统上,最常见的就是国内大型博客平台之间的搬家功能。 但也有一些不同程序语言和数据库类型之间的搬迁,比如WordPress博客搬家到Pjblog,或者pjblog博客转换到WordPress系统,两者是完全不同的系统,一个是asp,一个是php,一个是access数据库,另一个是mysql,两者之间如何实现数据的搬迁,原理上都差不多。 下面写一点简易的思路,恰好碰到了一个数据转移的问题,在国外的一个网站上申请了mysql数据库,但由于网络速度慢,想把数据迁移到国内的mysql数据库上,但由于国外的mysql无法登陆phpAdmin,没法导出数据。国内的mysql,也无法登陆phpAdmin,两个系统都无法直接进行数据迁移。 于是想了一下,假设国外的mysql数据库为A,国内的mysql数据库为B,可以先从A读出数据,然后写入到B里面就可以了,如果逐条读取然后同步写入,数据搬迁就可以了,参考代码: [code] 数据搬迁 [/code] 不同的系统平台之间,如果可以获取数据库字段信息,可以考虑上面的方式,如果无法得到数据库信息,可以考虑分析html页面,分离内容,然后写入数据库,实现数据的搬迁。