摘要: 1,数组的定义和初始化什么是数组?数组是一种编程结构,它是一个存储一组或一系列数值的变量。比如人口普查时对个人的身份登记,如姓名、性别、民族、出生等就可作为数组。PHP中创建数组使用array()结构来定义,比如: $people=array('name','sex','nation','brith'); 而如何显示数组中的各元素的值,我们则是使用从0开始的索引,索引号在变量名称后的方括号... 阅读全文
摘要: 1. 年-月-日 echo date(‘Y-m-j’); 2010-02-6 echo date(‘y-n-j’); 10-2-6 大写Y表示年四位数字,而小写y表示年的两位数字; 小写m表示月份的数字(带前导),而小写的n则表示不带前导的月份数字。 echo date(‘Y-M-j‘); 2010-Feb-6 echo date(‘Y-m-d’); 2010-02-06 大写M表示月份的3个缩写... 阅读全文
摘要: 一、引号定义字符串 在PHP中,通常一个字符串被定义在一对引号中,如:'I am a string in single quotes'"I am a string in double quotes"PHP语法分析器是用成对的引号来判断一个字符串的。因此,所有字符串必须使用同一种单或者双引号来定义开始和结束。例如,下面的字串定义是不合法的:"I am not a valid string sinc... 阅读全文
PHP和Html最简单的交互是通过print和echo语句来实现的,在世纪使用中,print和echo两者的功能几乎是完全一样的。可以这么说,凡是有一个可以使用的地方,另一个也可以使用。但是,两者之间也还是有一个非常重要的区别:在echo函数中,可以同时输出几个字符串,而在print函数中则只可以同时输出一个字符串。同时,echo函数并不需要圆括号,所以echo函数更像是语句而不像是函数。
echo和print都不是函数,而是语言结构,所以圆括号都不是必须的。它们的区别在于:
(1) echo可以输出多个字符串,像下面这样:
echo ‘a’,’b’,’c’;
如果你非要加上圆括号,主义写成echo(‘a’,’b’,’c’);是错误的,应该写成:
echo(‘a’),(‘b’)(‘c’)
它没有像函数的行为,所以不能用于函数的上下文。
(2) print只能输出一个字符串,它可以表现得像一个函数,比如你可以如下使用:
$ret=print ‘Hello World’;
所有它能用在更复杂的表达式中。
另外,echo的效率相对比较快
如下代码:
<?php
$a=’hello’;
$=’php world’;
echo $a,$b.’<br>’; //echo 可以用逗号分隔字符串变量来显示
print $a.$b.’<br>’; //而print不能使用逗号,只能使用点号分隔
print $a,$b.’<br>’; //使用逗号时会报错
?>
echo命名和print命令相同,没有区别
echo函数和print函数有区别
echo() 无返回值,与echo命令相同
print() 有返回值,成功,返回1,false,返回0
摘要: section循环
section的运用了解:
1、循环一个简单的一维数组:
Example 7-30. Looping a simple array with {section}
Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->1&nbs... 阅读全文
摘要: PHPExcel是一个强大的PHP处理Excel工具。如果你需要将数据输出成Excel格式,PHPExcel将是您不二的选择。 阅读全文
摘要: 在你平时的操作中,难免进行了错误的操作,使得系统无法正确运行。这个时候不一定要进行重新安装操作系统,我们可以采用一定的办法进行系统的还原。具体还原到我们进行误操作之前的某个时间。系统还原是Windows XP中相当有用的工具,如果你误删了文件、电脑出现各种故障,甚至系统已经完全崩溃时,系统还原一般就可以恢复XP系统了。 一、系统还原的启动 其实,系统还原的启动都是通过运行rstrui程序来进行的,... 阅读全文
摘要: 随着液晶显示器市场售价越来越便宜,很多朋友都已经让自家的CRT显示器退伍,换上了轻薄时尚的LCD液晶了。但是当你拥有了自己的液晶后,把它往那里一丢就万事大吉轻松享用了吗?其实不然,液晶显示器还是很多你不知道的使用注意事项呢。 我们经常会看到有些朋友在抱怨某款液晶显示效果不佳,屏幕经常不明原因变得模糊不清,甚至是在清洁液晶时,由于不小心给液晶留下了致命伤。其实这些都是由于对液晶显示器的使用,缺... 阅读全文
最近越来越多的朋友在使用国外主机,而国外很大一部分主机都是Linux主机,往往把PHP程序(如discuz和wordpress等等)上传到空间总是出现各种问题,现在把几点需要注意的列出来和大家分享:
一、不要使用记事本编辑wp-config.php和.htaccess
用记事本编辑wp-config.php和.htaccess,会改变结构编码,这里推荐大家使用Notepad++
二、上传的时候使用二进制上传
基本上的PHP程序都要求二进制上传,推荐大家使用Cuteftp或是使用FlashFXP。
Cuteftp设置方法:站点管理器——找到你需要编辑的站点——属性——类型——传输类型——二进制,确定即可。
FlashFXP设置方法:会话——传输模式——二进制。
注意以上两点,我想应该不会有什么问题了。
如果你的浏览器Cookie保存的地方找不到的PHPSESSID这个变量,那就的Session就是不可用的,请看看PHP.ini的设置
; Whether to use cookies.
session.use_cookies = 1
;session.cookie_secure =
; This option enables administrators to make their users invulnerable to
; attacks which involve passing session ids in URLs; defaults to 0.
; session.use_only_cookies = 1
; Name of the session (used as cookie name).
session.name = PHPSESSID
; Initialize session on request startup.
session.auto_start = 0
; Lifetime in seconds of cookie or, if 0, until browser is restarted.
session.cookie_lifetime = 0
; The path for which the cookie is valid.
session.cookie_path = /
; The domain for which the cookie is valid.
session.cookie_domain =
我的原来是session.cookie_domain = /
记住一定要去掉/,才可以使用
奇妙的PHP
摘要: PHP是个伟大的web开发语言,灵活的语言,但是看到php程序员周而复始的犯的一些错误。我做了下面这个列表,列出了PHP程序员经常犯的10中错误,大多数和安全相关。看看你犯了几种
1.不转意html entities
一个基本的常识:所有不可信任的输入(特别是用户从form中提交的数据) ,输出之前都要转意。
echo $_GET['usename']... 阅读全文
摘要: 一:修改php.ini文件中的include_path项。
例:include_path = .:/usr/local/lib/php:./include
二:使用ini_set方法。
例:ini_set("include_path", ".:../:./include:../include");
How do I set PHP include_path?
There... 阅读全文
摘要: 通过 PHP,可以把文件上传到服务器。
创建一个文件上传表单
允许用户从表单上传文件是非常有用的。
请看下面这个供上传文件的 HTML 表单:
<html><body><form action="upload_file.php" method="post"enctype="multipart/form-data"><label for="f... 阅读全文
摘要: 2009震撼发布的中文SpeedPHP应用框架,专注于速度,带领开发者进入快速开发的里程。
SpeedPHP框架第二版不仅保留了一贯快速开发的风格,更加入一系列强大的功能,也编写了大量的教程。无论是初学者或是有经验的PHP高手,都可以很轻松的学习和使用这个全新的PHP框架,体验快速开发的乐趣。
链接:
零基础入门教程:开始使用SpeedPHP,Hello World,理解MVC,制作留言本,... 阅读全文
北京时间12月3日晚间消息,据国外媒体今日报道,伦敦警视厅在一次行动中关闭了超过1200家非法互联网购物网站,这是迄今为止英国此类行动中规模最大的一次。
伦敦警视厅表示,这些网站大量销售打折的设计师商品,包括Ugg的靴子和蒂凡尼的首饰等。买家从这些网站购买商品后会收到假货,甚至什么都收不到。而买家的信用卡信息还有可能被用于其他非法活动。
伦敦警视厅中央电子犯罪部门(以下简称“PCeU”)搜集的信息显示,尽管使用英国域名,但大部分此类网站都是在亚洲,利用错误或误导性信息进行注册的。这使得受害者几乎无法就产品质量或无法收货进行投诉。
PCeU在这一行动中与英国域名注册机构Nominet等多个组织密切合作,以确定欺诈网站的身份。PCeU最终取消了1219个域名的注册。PCeU主管查理·麦克穆迪(Charlie
McMurdie)表示:“欺诈者利用了买家希望以低价购买设计师商品的心理,这在每年这一时段特别明显。”
她同时表示:“英国人通常认为后缀名为.co.uk的网站是安全的,因此更信任这类网站。然而在此次行动中,我们可以确认所有这类网站都是在英国国外注册的。”“当用户将信息提交给这些网站后,信息将被英国国外的犯罪网络掌握。这些信息不仅有可能被用于欺诈,也有可能被出售,或被用于进一步的犯罪活动
摘要: RSS has become the standard technology for syndicating information to large audiences. Many people have something to say, but its finding the right audience for your voice that matters. A great place ... 阅读全文
摘要: Hello
We are notifying you that your account, or a portion or feature of your
account has caused an overload on one of our servers. We have a shared
hosting environment that we must maintain at ... 阅读全文
Maybe it’s just me, but I get kind of
annoyed when websites are accessible by both their non-www and www URL.
If you attempt to go to my site by using http://szcpost.com/,
you’ll see that you’re automatically sent to
http://www.szcpost.com/ instead.
Why should you do this?
If you require people to login to your site, you probably give them
a cookie so they don’t have to login each time. But that cookie is only
good for one or the other URL, not both. So if somebody logs in using
http://szcpost.com/ and comes back later using
http://www.szcpost.com/, they’ll be forced to login again, even though
a cookie already exists for them using the other version.
Also, forcing one URL variety over the other ensures that you won’t
be double indexed or receive split page ranks in the search engines.
While Google does a pretty good job on their end of preventing this,
it’s possible that you could have two distinct page rank values for
each version of the web page, even though they are 100% identical in
content, but only differing in the presence of “www” in the URL.
How do you do it?
It’s simple really. Just add the following code to your .htaccess
file in the highest folder of your web directory and yor visitors will
be forced to use the www version.
RewriteEngine on
RewriteCond %{HTTP_HOST} ^szcpost.com [NC]
RewriteRule ^(.*)$ http://www.szcpost.com/$1 [L,R=301]
摘要: 不支持,必须一次一次执行 $formatid = mysql_insert_id(); &... 阅读全文
Dear Huang,
Thank you for contacting our technical support team.The Website http://www.szcpost.com,
Let me clarify that despite the fact that ftp access is protected now,
hackers still have access to web space through vulnerable permissions
allowed in your account. We should explain that hackers are using
"write" permissions opened on the web server for overwriting hosted
data. It is not secure to have permission for the folders set to 777 or
775 as it allows everybody to do everything to this file and add virus
injections which will infect others. Having files/folders with such
permissions anyone can write to it. This means a security hole since
everybody on the server can overwrite these files or can write, remove
or overwrite files in the directories.
Please, find "permissins.list" file placed to FTP root with full list
of found files/folders with dangerous permissions granted.
You should check all files/folders found in your account and set permissions for folders chmod 755, files 644.
Please, check it from your end. Feel free to contact us if you have any questions.
Kind regards,
Technical support
Thank you for patience and cooperating with us. Let us clarify that
hackers are using "write" permissions opened on the web server for
overwriting hosted data. It is not secure to have permission for the
folders set to 777 or 775 as it allows everybody to do everything to
this file. Having files/folders with such permissions anyone can write
to it. This means a security hole since everybody on the server can
overwrite these files or can write, remove or overwrite files in the
directories.
(777 is a read permissions for owner, group and others; write
permissions for owner, group and others; execute permissions for owner,
group and others;). You should check all files/folders found in your
account and set permissions for folders chmod 755, files 644.
Please, review listed files/folders in a ./permissions.list file
created under the FTP directory. Please, fix permissions a soon as
possible to block this hole in security.
We suggest you to look into this problem deeper, to learn more about
what you can do to protect yourself in the future, or how your site may
have been compromised in the first place, please follow these links:
Feel free to contact us if you have any questions.
Kind regards,
Technical support
Shenzhen Universiade
指令名称 : chmod
使用权限 : 所有使用者
使用方式 : chmod [-cfvR] [--help] [--version] mode file...
说明 : Linux/Unix 的档案调用权限分为三级 : 档案拥有者、群组、其他。利用 chmod 可以藉以控制档案如何被他人所调用。
参数 :
mode : 权限设定字串,格式如下 : [ugoa...][[+-=][rwxX]...][,...],其中
u 表示该档案的拥有者,g 表示与该档案的拥有者属于同一个群体(group)者,o 表示其他以外的人,a 表示这三者皆是。
+ 表示增加权限、- 表示取消权限、= 表示唯一设定权限。
r 表示可读取,w 表示可写入,x 表示可执行,X 表示只有当该档案是个子目录或者该档案已经被设定过为可执行。
-c : 若该档案权限确实已经更改,才显示其更改动作
-f : 若该档案权限无法被更改也不要显示错误讯息
-v : 显示权限变更的详细资料
-R : 对目前目录下的所有档案与子目录进行相同的权限变更(即以递回的方式逐个变更)
--help : 显示辅助说明
--version : 显示版本
范例 :将档案 file1.txt 设为所有人皆可读取 :
chmod ugo+r file1.txt
将档案 file1.txt 设为所有人皆可读取 :
chmod a+r file1.txt
将档案 file1.txt 与 file2.txt 设为该档案拥有者,与其所属同一个群体者可写入,但其他以外的人则不可写入 :
chmod ug+w,o-w file1.txt file2.txt
将 ex1.py 设定为只有该档案拥有者可以执行 :
chmod u+x ex1.py
将目前目录下的所有档案与子目录皆设为任何人可读取 :
chmod -R a+r *
此外chmod也可以用数字来表示权限如 chmod 777 file
语法为:chmod abc file
其中a,b,c各为一个数字,分别表示User、Group、及Other的权限。
r=4,w=2,x=1
若要rwx属性则4+2+1=7;
若要rw-属性则4+2=6;
若要r-x属性则4+1=7。
范例:
chmod a=rwx file
和
chmod 777 file
效果相同
chmod ug=rwx,o=x file
和
chmod 771 file
效果相同
若用chmod 4755 filename可使此程序具有root的权限
来源:www.szcpost.com
摘要: 【友情链接:http://www.tjcuxiao.com 和http://www.mujiz.cn】 阅读全文
摘要: 【友情链接:http://www.tjcuxiao.com 和http://www.mujiz.cn】
滥用include
1.漏洞原因:
Include是编写PHP网站中最常用的函数,并且支持相对路径。有很多PHP脚本直接把某输入变量作为Include的参数,造成任意引用脚本、绝对路径泄露等漏洞。看以下代码:
...
$includepage=$_GET["includepage"];
include($includepage);
...
阅读全文
得在学习C语言的时候,教科书上的第一个程序就是叫Hello world,一个在屏幕上简单地打印出“Hello world!”语句的例子。在系统的学习UML语言之前我们来看一个简单的例子,让大家有一个系统的认识。
在java中一个在浏览器中显示“Hello World!”的Applet代码如下:
import java.awt.Graphics;
class HelloWorld extends java.applet.Applet{
public void paint( Graphics g ){
g.drawString("Hello World!", 10,10 );
}
}
代码的第一行:
import java.awt.Graphics;
使得程序可以使用Graphics类。前缀 java.awt指出了类Graphics所在的包。
第二行代码:
class HelloWorld extends java.applet.Applet{
从Applet类派生出新的类HelloWorld,Applet类在java.applet包中。
接下来的三行代码:
public void paint( Graphics g ){
g.drawString("Hello World!", 10,10 );
}
声明了类HelloWorld的方法paint,在他的实现中调用了另一个方法drawString来输出“Hello World!”。
我们可以很直接地为这个程序用UML建立模型。如图2-1。
图2-1
图2-1表达了最基本的HelloWorld模型,但它还有很多东西没有表示出来。在我们的程序中Applet类和Graphics类的使用是不相同的。Applet用作HelloWorld类的父类,而Graphics类用在方法paint的实现中。在UML模型中可以将这些关系表示为图2-2:
图2-2
在图2-2的类关系图中,我们用简单的矩行图标表示类Applet和Graphics类,没有将它们的属性和方法显露出来是为了简化。图中的空心箭头表示HelloWorld类是Applet类的子类,代表一般化。HelloWorld和Graphics之间的虚线箭头表示依赖关系,表示HelloWorld类使用了Graphics类。
到这里或许你认为已结束了,其实不然,如果认真研究java库中的Applet类和Graphics类会发现他们都是一个庞大的继承关系中的一部分。追踪Applet的实现可以得到另外一个类图,如图2-3所示:
图2-3
<?php phpinfo();
$db_connection = mysql_connect("localhost","root","110");
mysql_select_db("szcpost",$db_connection) or die("Cannot open database test");
// 读取当前数据库名 www.szcpost.com
function mysql_current_db()
{
$r = mysql_query("SELECT DATABASE()") or die(mysql_error());
return mysql_result($r,0);
}
function get_host_info()
{
return mysql_get_host_info();
}
function get_client_info()
{
return mysql_get_client_info();
}
$db_name = mysql_current_db();
echo $db_name;
?>
摘要: 类(Class) 类(图A)是对象的蓝图,其中包含3个组成部分。第一个是类名。第二个是属性(attributes)。第三个是该类提供的方法。属性和操作之前可附加一个可见性修饰符。加号(+)表示具有公共可见性。减号(-)表示私有可见性。#号表示受保护的可见性。省略这些修饰符表示具有 package(包)级别的可见性。如果属性或操作具有下划线,表明它是静态的。在操作中,可同时列出它接受的参数,以及返回... 阅读全文
1.什么是模式?
模式,即pattern。其实就是解决某一类问题的方法论。你把解决某类问题的方法总结归纳到理论高度,那就是模式。
Alexander给出的经典定义是:每个模式都描述了一个在我们的环境中不断出现的问题,然后描述了该问题的解决方案的核心。通过这种方式,你可以无数次地使用那些已有的解决方案,无需在重复相同的工作。
模式有不同的领域,建筑领域有建筑模式,软件设计领域也有设计模式。当一个领域逐渐成熟的时候,自然会出现很多模式。
2.什么是框架?
框架,即framework。其实就是某种应用的半成品,就是一组组件,供你选用完成你自己的系统。简单说就是使用别人搭好的舞台,你来做表演。而且,框架一般是成熟的,不断升级的软件。
3.为什么要用模式?
因为模式是一种指导,在一个良好的指导下,有助于你完成任务,有助于你作出一个优良的设计方案,达到事半功倍的效果。而且会得到解决问题的最佳办法。
4.为什么要用框架?
因为软件系统发展到今天已经很复杂了,特别是服务器端软件,设计到的知识,内容,问题太多。在某些方面使用别人成熟的框架,就相当于让别人帮你完成一些基础工作,你只需要集中精力完成系统的业务逻辑设计。而且框架一般是成熟,稳健的,他可以处理系统很多细节问题,比如,事物处理,安全性,数据流控制等问题。还有框架一般都经过很多人使用,所以结构很好,所以扩展性也很好,而且它是不断升级的,你可以直接享受别人升级代码带来的好处。
框架一般处在低层应用平台(如J2EE)和高层业务逻辑之间的中间层。
5.软件为什么要分层? 。
为了实现“高内聚、低耦合”。把问题划分开来各个解决,易于控制,易于延展,易于分配资源…总之好处很多啦:)
灵魂架构师,是一个IT技术论坛,正在崛起,网址:http://www.bbssa.net/ 。
具体含义为:BBS+SoulArchitect简写
简单记忆方法: bbs(论坛) + sa(MSSQL数据库账号)
灵魂架构师总群:52233236(满)
灵魂架构师SEO群:28026778
灵魂架构师PHP群:46297554
灵魂架构师Oracle群:7405133
灵魂架构师ASP群:57729153
灵魂架构师ASPNET群:6368534(满)
灵魂架构师OFFICE群:22612834(满)
灵魂架构师MSSQL群:38697281
灵魂架构师C#.NET群:4724162
灵魂架构师之VC学习群:57881024(满)
灵魂架构师.net崛起1:38382341
灵魂架构师.net崛起2:57881098
灵魂架构师.net崛起3:57881040
灵魂架构师AJAX群:18455991
灵魂架构师JAVA群:19000156
灵魂架构师JSP群:84065867
灵魂架构师MVC群:47103438
真诚希望各位IT爱好者前来,共同壮大灵魂架构师论坛,与灵魂架构师共同成长。