用Php怎么编写出具有高安全的代码
PHP是一门开发速度快,运行速度快的语言,但是它也有致命缺点,无多线程(虽然Apache的服务器在另一种程度上弥补了这种缺陷,但是在编写一些需要高并发并且考虑效率的程序下,它还是明显不足)。
但是PHP可以大大缩短开发周期,与开发成本(比如PHP对于程序要求的门槛很低)。
总体来说,PHP很适合开发网站来用,而在开发网站中,避免不了用PHP做一些安全性要求极高的
程序,比如银行卡转账等,这就考验一个程序的思维是否严谨了,否则得后果.....嘿嘿~
下面说说我的心得吧(以银行卡转账为例):
1. 要记住不能轻易信任来自GET方法得到的参数值。
2. 一般的重要信息都以POST的方法进行提交(比如银行卡号)
3. 初步验证信息的正确性,比如对于银行卡号来说,要注意卡号的长度,卡后是否全部由数字组成等
4. 将验证后的信息分别保存在SESSION以及自己创建的数据库中(SESSION是比较安全的,别人无法轻易的伪造)
5. 提交转账信息(调用第三方接口)。
6. 得到转账结果后与数据库中预先保存的数据进行对比,核对无误后转账成功!
注:第4步的把信息存储在SESSION是为了某些特殊的操作,是否用得着就看具体的程序了
还有,值得一提的是,校验与提交转账信息尽量放在一个PHP文件中,尽量别分开为两个,
文件,因为如果分开的话,校验页面校验成功后要向提交转账信息页面发出请求,这样,多了
一步请求,多一份危险~可以用一下类似的格式:
if(card_no_is_in_format){
do something
}else if(card_pw_is_in_format){
do someting
}.......else{
submit//提交请求
}
以上为个人观点,希望有经验的老鸟多提提宝贵意见,嘿嘿
相关文档:
学习目的:做一个分页显示
关键就是用到了SQL语句中的limit来限定显示的记录从几到几。我们需要一个记录当前页的变量$page,还需要总共的记录数$num
对于$page如果没有我们就让它=0,如果有<0就让它也=0,如果超过了总的页数就让他=总的页数。
$execc="select count(*) from tablename ";
$re ......
<?php
/*
抛个砖,具体要做成什么样自己做。
*/
if(isset($_FILES['userfile']['tmp_name'])){
$userfile = $_FILES['userfile']['tmp_name']; //保存在系统的临时位置
$userfile_name = $_FILES['userfile']['name'];//文件名
$userfile_size = $_FILES['userfile'][ ......
1,类的结构声明方式:
class 类名 {
//类体
}
2,属性和方法的定义;
使用构造函数:
使用析构函数:
类的实例化:
3,控制访问权限:public , private protected;
4 ......
2200的路过。。PHP本身是简单,但学PHP不是指你走PHP这条路,而是指你走WEB这条路,会PHP,还要会ECSHOP,DZ,PHPCMS,帝国CMS各大程序,你会了么?好,你说你PHP很好,这些我都会,那AJAX?可以灵活运用?AJAX也会,那好,FLEX你会了么?都会,好,你可以自行在WIN2003或者LINUX下配置PHP环境,获取最优环境了么?若想高工资, ......
访客计数器的流程如下
第一位用户浏览某页。
服务器程序从数据库或文件中读取该页被浏览次数。
将次数加一储存,并将它送回第一位用户。
第二位用户浏览某页。
服务器程序从数据库或文件中读取该页被浏览次数。
将次数再加一储存,并将它送回第二位用户。
<?php
$filename="./visit";
$handle=fop ......