导读:很多朋友问到关于怎么做好php的相关问题,本文编程笔记就来为大家做个详细解答,供大家参考,希望对大家有所帮助!一起来看看吧!
本文目录一览:
想要精通一门语言,只学习语言本身是不够的,做设计你还得需要数据结构、服务器优化方面的知识,所以不要小看一门语言。
PHP容易上手,掌握了网站的基本原理--“增删改查”,能够写一个简单的留言板并且在上面做一些简单扩展,应该就算入门了。
接下来,你需要学习最基本的PHP模板引擎,smarty;了解PHP的面向对象机制,可以自己试着封装一个sql类;然后应该去了解一下MVC开发模式,熟悉1-2中PHP开源框架。除此之外最好还掌握js基础、一个js框架、ajax技术,基本的css。
我相信完成以上过程,进一般的公司做一些日常工作是没问题的,如果想要进专业一点的公司,还需要了解mysql的优化、了解mysql存储过程、实务,这时候应该深入看看数据结构了,有机会熟悉一下linux。
基本上到了这里,你应该是中级水平,再怎么提高就看你自己了
一、心态
我说了php入门很容易,不错,但我不说php它很容易,php应用起来博大精深,如果你说做php很简单,那么我只能说你懂php懂得比较简单吧.在大学读书的时候大家一定要心态摆正,比如你想学什么语言,以后要做什么程序员,比如java,C++,我讲一例子,比如你立志做java程序员,你首先在校学校开这课程时努力要把它学好,学好了还不行哦,因为这些只能应付考试的,工作上这算是不起眼的知识,所以在剩下来的读书时间努力涉及一些应用上的,更深层次的知识,把java的学得更深才行. 人的精力是有限的,你如果想一起同时学精通php,又精通java,等等,算了吧,人家工作了几年都不敢说精通,还在校的只能说是不知天高地厚了.---如果你以后想编程就努力专一花大量的时间深学它,当然也要多学一下其它的.初学者不要有这种精几门编程语言的心态,到头来样样不精,连工作也找不到.
二、书
买书来学习是最直接实在的,网上中原的视频教程,it实验室的算了吧,想看它们就会php是不行的,如果想学某种编程语言,就要买到那种编程语言最书的几本书来一起看,为什么要买几本呢,因为这样的,有书的这节讲不够细,那些书偏会讲得细,这样有个互补.把它们的理解合起来,更易加深对程序的理解. 学好入门的后就买几个开发实例的书来看,最好把里面的代码都打打运行一下,慢慢地就会适应工作. 如果你舍不得买几十元一本的书,那样你会多走很多弯路.单单的一本书给不了你多少知识.
三、多学相关知识
一个phper懂得php是最基本的!但必须要熟练js,css,html,sql,数据库,设计模式...等等.说真的,我总觉平时写js,比php还写得多. 如果说php你强,那么熟练js,css,html,sql,数据库,设计模式等等就是你值钱的地方了..不懂它们,你php再好,也算是菜鸟.工作中很快被淘汰..大家能理解到这个重要性吗.
四、多读源代码
多读开源的代码,dz,dedecms很多php的开源代码,读多了你思路更广了,你会发现很多很妙的写法,也是提高水平最快的方法之一.
5
五、坚持
做事要坚持,学编程也要,这是前提,是基本.
php怎么自学
P H P 自学这个, 我 建 议 你 首 先买 一些 比 较好 的 PHP 课程 , 然后 听 一 下千 锋 网 上 的 PH P课程视 频,对学 PHP 是 有很大帮 助的。
怎么自学PHP
入门:《php5手册》比其它什么书,什么视讯都好!
提高:看 *** arty,wordpress等的原始码!
深化:研究sugarCRM的架构,设计思想。
:然后试着阅读php解析器的原始码,写扩充套件模组。
怎么自学php
php程式设计比较难,自学的话不容易,除非你能找到自学的方法。
……………………………………………………………………
怎样学习php,我刚才看到一篇很不错的文章,是一个专科生介绍自己如何自学php,并找到php的工作,里面介绍了他的学习方法和学习过程,希望对你有帮助。
先做个自我介绍,我07年考上一所很烂专科民办的学校,学的是生物专业,具体的学校名称我就不说出来献丑了。09年我就辍学了,我在那样的学校,一年学费要1万多,但是根本没有人学习,我实在看不到希望,我就退学了。
退学后我也迷茫,大专都没有毕业,我真的不知道我能干什么,我在纠结着我能做什么。所以辍学后我一段时间,我想去找工作,因为我比较沉默寡言,不是很会说话,我不适合去应聘做业务。我想应聘做技术的,可是处处碰壁。
一次偶然的机会,我才听到php这个行业。那天我去新华书店,在计算机分类那边想找本书学习。后来有个女孩子走过来,问我是不是读计算机的,有没有兴趣学习php,然后给我介绍了一下php现在的火热情况,告诉我学php多么的有前景,给我了一份传单,php培训的广告。听了她的介绍,我心里痒痒的,确实我很想去学会一门自己的技术,靠自己的双手吃饭。
回家后,我就上网查了下php,确实是当今比较热门的行业,也是比较好找工作的,工资也是相对比较高。我就下决心想学php了。于是我去找php培训的相关资讯,说真的,我也很迷茫,我不知道培训是否真的能像他们宣传的那样好,所以我就想了解一段时间再做打算。
后来,我在百度知道看到一篇让我很鼓舞的文章是一个php高手介绍没有基础的朋友怎么自学入门学php,文章写的很好,包含了如何学习,该怎么学习。他提到一个方法就是看视讯,因为看书实在太枯燥和费解的,很多我们也看不懂。这点我真的很认同,我自己看书往往看不了几页。
我在想,为什么别人都能自学成才,我也可以的!我要相信自己,所以我就想自学,如果实在学不会我再去培训。
主意一定,我就去搜索php的视讯,虽然零星找到一些php的视讯,但是都不系统,我是想找一个能够告诉我该怎么学的视讯,一套从入门到精通的视讯,一个比较完整的资料,最好能有老师教,不懂可以请教的。
后来我又找到一份很好的视讯,是在IT学习联盟推出的一份视讯《零基础php就业班》。里面的教程还不错,很完整,还赠送10个顶级企业专案。
下面介绍下我的学习流程,希望对和我一样完全没有基础的朋友有所帮助。
收到他们寄过来的光碟后,我就开始学习了,由于我没有什么基础,我就从最简单的Html/css/Javascript视讯教程学起,话说简单,其实我还是很多不懂的,只要重复多看几遍,就能看懂。Html/css/Javascript我差不多学了一个礼拜,接下来我就学了PHP基础和Mysql资料库,差不多也就三个礼拜。我每天都在不停的写一些简单的程式码,这样一月后我基本掌握了php的全部基础。
接下来开始学习php高阶课程,老师幽默风趣而又轻松的课堂教课,使我发现原来学习php并不是一件很难的事情。之前我把php基础学得还不错,到了到了php高阶部分,我觉不又不是很难,可能老师太牛了,他能把复杂的问题讲的比较通俗易懂,有些难点的地方我还是连续看了五六次,把他弄懂。每天下午6点下班后,吃了饭,马上跑回家。看视讯,买了几本笔记本。当时,为了程式设计还花几百元了台二手的台式电脑,配置一般,但程式设计是足够的。一边看视讯,一边记笔记,把重点都记下来,还一边跟着老师敲程式码,为了能尽早学会php。每天都坚持学5-6个小时。经常学到晚上一点多才睡觉。星期六,日不用上班,每天7点多起床,学到晚上11,12点。那段时间特别辛苦,特别累。在学习php的三个多月里,除了吃饭睡觉工作,剩余的时间都在学习,因为我知道自己的计算机基础不是很好,也没有学过什么计算机,相对于那些科班的人来说我要比他们付出更多的努力。我只能咬紧牙关,坚持下去,我不能放弃,我要完成我的梦想,我要让我的家人过上好日子。终于三个多月后我把php教程里的内容和专案都学完了,在学专案的过程中我发现专案特别重要,他能把你学过的知识全部联络起来,能更好的理解你所学的知识。还有学习过程中,动手很重要,要经常跟着老师动手敲,动手吧,跟着做,一行一行的跟着敲,再试着加一些自己的功能,按照自己的思路敲一些程式码,收获远比干听大的多。 如果遇到暂时对于一些思路不能理解的,动手写,先写程式码,慢慢你就会懂了。这套视讯还赠送了10个顶级企业专案,对于我没有任何经验的人来说,这个太重要了,还有在学习专案是提升能力最快的方法。专案能把所有的知识点全都连到一起了,不再是分散的,而是形成一个整体了。那种感觉是仅仅深入钻研知识点而不 *** 实专案的人所不能体会的。一个专案就是一根绳子可以把大片的知识串到一起。 就这样,我用了两个月也把专案给学完了。其实学完教程差不错就达到就业水平,但是我可能觉得自己学历低还是把那10个顶级企业专案才去找工作。
于是我就到51job疯狂的投简历,因为我学历的问题,专科没有毕业,说真的,大公司没有人会要我,所以我投的都是民营的小公司,我希望自己的努力有所回报。没有想过几天过后,就有面试了,但是第一次面试我失败了,虽然我自认为笔试很好,因为我之前做了准备,但是他们的要求比较严格,需要有一年的专案经验,所以我没有被选中。
后来陆续面试了几家公司,终于功夫不负有心人。我终于面试上的,是在闵行的一家民营的企业,公司规模比较小,我的职务是php开发程式设计师,但我也比较满足,开的工资是3500一个月,虽然我知道在上海3500只能过温饱的生活,但是我想我足够了。我至少不用每天都要靠父母养,我自己也能养活自己的。我想只要我继续努力,我工资一定会翻倍的。
把本文写出来,希望能让和我一样的没有基础的朋友有信心,其实我们没有必要自卑,我们不比别人笨,只要我们肯努力,我们一样会成功。
…………………………………………………………………………
希望你未来成为出色的php工程师。
怎么自学php呢
-css-js(先学ajax)-(伺服器环境搭建lamp/lnmp)-apache-php-mysql
我认为吧,这样的顺序比较好
其实呢环境可以装继承 ,mysql语句学不学没关系,框架里面都有封装的,Apache会配置配置档案就好了
基础还是挺重要的。
php+mySQL怎么样自学??
开始除错什么discuz论坛呀.乱来
一,简单学习HTML的表单
二,学PHP语法
三,简单连线资料库
.....
....
.....
.....
装张宴的回忆未来是配置好的软体
书是要买的
不要升级电脑
自学PHP,怎么入手快?
,,前后顺序为:最基本的HTML知识,其次最好会用DIV+CSS,然后就是PHP的基本语法,常用函式,再者会用MYSQL资料库即可,最后把所学的运用起来就可以做基本的网站了(想做的更好中间还得学Javascript,Jquery,正则)前提是你的有PHP执行环境,初学者建议使用WAPM整合包,,
php应该怎么自学?
什么东西都看了。应该有不错的基础了。还是写不出东西,我觉得还是自己的思路不够的问题。
多去论坛看看别人写的什么吧。
或者,加个好友。和你好好说 Q:295805610 说下百度PHP哈
php自学学不懂怎么办?
我是学习物联网的,我在学校每天都是程式码程式码听课听课练习练习。学这类你除了程式码要死记硬背,多练习以外,有个帮手或者老师会更好。自学还是挺难的真的,但是功夫不负有心人。你要是真心想学,又不想去学习机构学习。你就买入门的书籍看,最好去那些卖二手书的网站买教科书,比较好。除了每天死记硬背程式码,要多写,前期尽量不要用DW之类的软体进行练习,尽量去手写,纸上手写程式码,因为程式设计软体都有快捷方式,不利于你记忆练习。每天做一下编辑网站,连结,排班等小操作,熟练后不要快捷方式,手动写程式码进行编辑再检视,慢慢来,这是累积下来的,急不了。最后祝你一切顺利吧
自学PHP怎么找工作?
你自己有信心么?面试的时候首先看的是你这个人,当然技术方面认为可以就OK了,进公司以后要熟悉一点时间的。你大可以说自己有工作经验,其实很多事都是门面,你说有那就有了呗,要是要离职证明就自己弄张,不是多大事,记住,要自信,让他们感觉你能做的到!因为你自信!
PS:三楼的?名声?没经验的毛头小子你有什么名声。。。我的意思
是叫楼主站在跟别人同一个起点上去争取。
学php有些好的方法推荐?
推荐w3cschool
除了有知识点讲解,还可以线上尝试编码
学习php,有哪些好的方法
PHP开发大概学习路线!供你参考!
第一阶段:HTML+CSS
HTML:这是做WEB开发必须要接触一门语言,现在这个语言基础对于学习PHP培训不可或缺,我们在网页上点选右键检视原始码的时候页面上显示的就是HTML语言。
第二阶段:Div+Css
有了HTML对于网站来说只是有了一个骨架,我们还要PHP培训后配置各种颜色,各种布局,这个时候我们就需要Div+Css来发挥这些作用。
第三阶段:Javascript
有了页面也有了布局,这个时候我们就需要新增很多页面的效果,比如横幅的滚动,这些是最常见不过的了,这些效果就是JS来实现的,我们也可以用JS第三方的库,比如JQ、Dojo等。
第四阶段:大型网站优化
Linux作业系统、LAMP环境搭建、LNMP环境搭建、大型资料库设计、MySQL高阶技术、MySQL优化、页面静态化、伪静态、大型网站架构解决方案、Ningx伺服器、Redis快取伺服器应用,云伺服器(阿里云)。
第五阶段:PHP呼叫语言的学习
前端页面好了,这个时候我们就需要呼叫资料,这个时候就用到PHP语言了,PHP的作用是把资料库中的资料经过PHP培训的处理展示在前端上。
第六阶段:学习资料库
PHP的资料来源是哪里?当然是资料库,资料库MySql,这个在PHP的手册中有MySql的一些扩充套件函式,MySql最原始的的Sql语句,我们至少要学会Create、Delete和Update。
第七阶段:伺服器的学习
按照上面的流程学号后基本可以做一个小的简单应用程式出来。如果你想进一步的提升自己的能力,那伺服器是必须的了,伺服器我们只需要学习Linux的就可以,Linux可以关注Redhat、Centos、Ubuntu。
PHP需要掌握的知识还是比较多的,最基本的比如:PHP基本的语法、php框架以及CMS、mysql资料库设计表、mysql资料库的基本SQL语句。现在一般PHP的都得会前端,那就包括:js/ajax、、css。如果更高点层次的就是linux伺服器。
下面参考雷雪松的个人部落格学习PHP的路线和一些方法。
1、用整合环境安装PHP环境,一定要记住这一点,不要自己分开去装,尤其是自学的朋友。不然你会觉得很复杂,会没有信心学下去的。也要注意任何高手都不是一蹴而就的,是一步一步,不同的阶段历练才有最后的沉淀。
2、先了解一些基本的变数型别,语法,函式,基本逻辑,写简单的程式码。前期以尝试,培养兴趣为主。这段时间是打基础很好的时候,这个会影响你后面的发展,不过也可以在后期去完善。
3、这时候你可能觉得PHP就这样,没什么难度,或者有的觉得太难了,简直一脸疑惑。这个到底有什么用。在这时候一定要坚持下来,可以试试先放一下,别太较真。慢慢的困惑你的会被你领悟的。这时,建议学习+css+js,缓解自己的压力,这个相对简单,简历信心。尤其是js,总结其实有相同的思路,可以结合著一起体会。
4、这些都感觉有80%了解就可以先放放了,现在在学习MySQL,也是先了解基础的。这个是干什么的,我可以用它做什么。因为之前装的整合环境。为什么感觉是凌乱的,我想告诉你的是,一是不要在自己没能力解决问题的时候死磕,浪费时间,丧失信心。这时候我们要做的是学习壮大自己,不要灰心。二是我本来觉得这一切都了解才是完整的。我们的目标也是要把这些都做好,这才是一个合格的PHP程式设计师。
5、这一切都顺利的话,你基本离预设的目标不远了,完成了整个学习的70%了。后面的是在之前的基础上升华。把HTML和css、js结合、静态档案和PHP结合、PHP和MySQL结合。这个阶段可能越到的问题会异常的多,一定要学会解决问题。网上很多都是答案,同样你要学会问问题。
6、这些之后你基本已经快到学习的尾声了,但还缺少经验。这时,你可以看一些网上开源的cms,例如织梦,国内用的多,越到问题好解决。看看一些视讯(网上免费的很多),查漏补缺,总结归纳形成自己的知识体系。是时候该准备庆祝下自己这段的时间没有白费(一般2到3各月,看平时每天花的时间),基本成为一个合格的PHP程式设计师了。也该恭喜你了,其实并不那么难。坚持,坚持;努力,努力;学习,学习。
Excel很难学吗?能不能推荐一些好的方法?
Excel一般的制表只要把工具栏上的按钮每个都用一下就可以无师自通了。主要是公式的使用。通常只要仔细看帮助就可以了,非常详细,很多教程就是直接抄帮助的。
我的建议是,多试,多看帮助。
我想减肥谁能推荐我一些好的方法!
酸奶减肥一:绿茶粉+酸奶
材料:绿茶粉10-15g,酸奶50-200g。
做法:两者搅拌均匀即可。
吃法:三餐前半小时进行饮用,毅力坚强美眉可替代晚餐。
Tips:绿茶粉可有效促进胃肠排毒,并有除痘抗辐射美肌的作用。
酸奶减肥二: 红糖+酸奶
材料,:红糖10g,酸奶50-200g。
做法:两者搅拌均匀即可。
吃法:每天2次,替代晚餐效果佳,建议空腹服用。
Tips:红糖不仅可以减肥,并且和酸奶配合还有令人惊喜的丰胸效果。
酸奶减肥三:竹盐+酸奶
材料:竹盐5g,酸奶100g。
做法:两者搅拌均匀即可。
吃法:三餐前半小时进行饮用。
Tips:竹盐能清理肠道,软化宿便轻松易举,肠胃轻松自然纤体成功。
这几款酸奶减肥法超简单,大家可以在家学着做哦,做了你就知道怎样减肥最有效了喔!
有些好的方法备考专八吗?
人文知识,改错有一本星火的不错,可以去书店看一下
听力很重要的,听力填空一个一分很可观的,要多训练一天一编最好
翻译一般不会拉开很多,注意语法,字要写好,first impression really count!
作文背一点范文吧,注意,语法,书写
请大家为我推荐些快速背课文的好的方法。还有记忆的一些好的方法
早上10点前和下午的3-5点之间:
1:读课文的第1段,2次;
2:读课文的第2段,2次;
3:读第1,2段,2次;
4:读课文的第3段,2次;
5:读课文的第4段,2次;
6:读第3,4段,2次;
……
……
……
以此类推,一直读完整篇课文!然后再读整篇课文2次。
最后试着背诵,能背多少是多少,不要去看书!背完后对照一下!
接着再重复前面的步骤!
这样2,3次自然会背了!当然,记忆力很差的话就试多几次!
UI设计怎么学比较好,求推荐一些好的方法?
设计是相对性没有绝对的,教你的都是设计路径(软体,颜色原理 等等)。
设计的好不好看个人天赋了,多看,多做,多思考。
有哪些好的复习方法推荐?
念出来会比默默看效果好得多 重点要少划些,划关键词就好,这样记得牢 最重要的还是实践,题一定要刷,可以先做一些全面的,看看自己是弱项是哪些,然后再专项练习
有哪些好的学习方法 啊?求推荐!
1.学习首先预习是最重要的,哪怕是十分钟都是好的,不然学到难的地方你必定会托课.
2.一定要认真完成老师布置的作业,做好这两点班级前十名没问题.
3.积累错题并学会归纳这一题形.
PHP如何做好最基础的安全防范
php给了开发者极大的灵活性,但是这也为安全问题带来了潜在的隐患,PHP如何做好最基础的安全防范呢?下面我为大家解答一下,希望能帮到您!
当开发一个互联网服务的时候,必须时刻牢记安全观念,并在开发的代码中体现。PHP脚本语言对安全问题并不关心,特别是对大多数没有经验的开发者来说。每当你讲任何涉及到钱财事务等交易问题时,需要特别注意安全问题的考虑,例如开发一个论坛或者是一个购物车等。
安全保护一般性要点
不相信表单
对于一般的Javascript前台验证,由于无法得知用户的行为,例如关闭了浏览器的Javascript引擎,这样通过POST恶意数据到服务器。需要在服务器端进行验证,对每个php脚本验证传递到的数据,防止XSS攻击和SQL注入。
不相信用户
要假设你的网站接收的每一条数据都是存在恶意代码的,存在隐藏的威胁,要对每一条数据都进行清理
关闭全局变量
在php.ini文件中进行以下配置:
register_globals = Off
如果这个配置选项打开之后,会出现很大的安全隐患。例如有一个process.php的脚本文件,会将接收到的数据插入到数据库,接收用户输入数据的表单可能如下:
input name="username" type ="text" size = "15" maxlength = "64"
这样,当提交数据到process.php之后,php会注册一个$username变量,将这个变量数据提交到process.php,同时对于任何POST或GET请求参数,都会设置这样的变量。如果不是显示进行初始化那么就会出现下面的问题:
?php
// Define $authorized = true only if user is authenticated
if
(authenticated_user()) {
$authorized = true;
}
?
此处,假设authenticated_user函数就是判断$authorized变量的值,如果开启了register_globals配置,那么任何用户都可以发送一个请求,来设置$authorized变量的值为任意值从而就能绕过这个验证。所有的这些提交数据都应该通过PHP预定义内置的全局数组来获取,包括$_POST、$_GET、$_FILES、$_SERVER、$_REQUEST等,其中$_REQUEST是一个$_GET/$_POST/$_COOKIE三个数组的联合变量,默认的顺序是$_COOKIE、$_POST、$_GET。
推荐的安全配置选项
error_reporting设置为Off:不要暴露错误信息给用户,开发的时候可以设置为ON
safe_mode设置为Off
register_globals设置为Off
将以下函数禁用:system、exec、passthru、shell_exec、proc_open、popen
open_basedir设置为 /tmp ,这样可以让session信息有存储权限,同时设置单独的网站根目录expose_php设置为Offallow_url_fopen设置为Offallow_url_include设置为Off
SQL注入攻击
对于操作数据库的SQL语句,需要特别注意安全性,因为用户可能输入特定语句使得原有的SQL语句改变了功能。类似下面的例子:
$sql ="select * from pinfo where product = '$product'";
此时如果用户输入的$product参数为:'39'; DROP pinfo; SELECT 'FOO
那么最终SQL语句就变成了如下的`样子:
select product from pinfo where product = '39';
DROP pinfo;
SELECT 'FOO'
这样就会变成三条SQL语句,会造成pinfo表被删除,这样会造成严重的后果。这个问题可以简单的使用PHP的内置函数解决:
$sql = 'Select * from pinfo where product = '"' mysql_real_escape_string($product) . '"';
防止SQL注入攻击需要做好两件事:对输入的参数总是进行类型验证对单引号、双引号、反引号等特殊字符总是使用mysql_real_escape_string函数进行转义但是,这里根据开发经验,不要开启php的Magic Quotes,这个特性在php6中已经废除,总是自己在需要的时候进行转义。
防止基本的XSS攻击
XSS攻击不像其他攻击,这种攻击在客户端进行,最基本的XSS工具就是防止一段Javascript脚本在用户待提交的表单页面,将用户提交的数据和COOKIE偷取过来。XSS工具比SQL注入更加难以防护,各大公司网站都被XSS攻击过,虽然这种攻击与php语言无关,但可以使用php来筛选用户数据达到保护用户数据的目的,这里主要使用的是对用户的数据进行过滤,一般过滤掉HTML标签,特别是a标签。下面是一个普通的过滤方法:
function transform_HTML( $string , $length null) { // Helps prevent XSS attacks
// Remove dead space.
$string = trim( $string );
// Prevent potential Unicode codec problems.
$string = utf8_decode( $string );
// HTMLize HTML-specific characters.
$string = htmlentities( $string , ENT_NOQUOTES);
$string = str_replace ( "#" , "#" , $string );
$string = str_replace ( "%" , "%" , $string );
$length = intval ( $length );
if ( $length 0) {
$string = substr ( $string , 0, $length );
}return $string ;
}
这个函数将HTML的特殊字符转换为了HTML实体,浏览器在渲染这段文本的时候以纯文本形式显示。如bold会被显示为: BoldText 上述函数的核心就是htmlentities函数,这个函数将html特殊标签转换为html实体字符,这样可以过滤大部分的XSS攻击。但是对于有经验的XSS攻击者,有更加巧妙的办法进行攻击:将他们的恶意代码使用十六进制或者utf-8编码,而不是普通的ASCII文本,例如可以使用下面的方式进行:
这样浏览器渲染的结果其实是:
a href = ""
SCRIPT Dosomethingmalicious
这样就达到了攻击的目的。为了防止这种情况,需要在transform_HTML函数的基础上再将#和%转换为他们对应的实体符号,同时加上了$length参数来限制提交的数据的最大长度。
使用SafeHTML防止XSS攻击
上述关于XSS攻击的防护非常简单,但是不包含用户的所有标记,同时有上百种绕过过滤函数提交Javascript代码的方法,也没有办法能完全阻止这个情况。目前,没有一个单一的脚本能保证不被攻击突破,但是总有相对来说防护程度更好的。一共有两个安全防护的方式:白名单和黑名单。其中白名单更加简单和有效。一种白名单解决方案就是SafeHTML,它足够智能能够识别有效的HTML,然后就可以去除任何危险的标签。这个需要基于HTMLSax包来进行解析。安装使用SafeHTML的方法:
1、前往 下载最新的SafeHTML
2、将文件放入服务器的classes 目录,这个目录包含所有的SafeHTML和HTMLSax库
3、在自己的脚本中包含SafeHTML类文件
4、建立一个SafeHTML对象
5、使用parse方法进行过滤
?php/* If you're storing the HTMLSax3.php in the /classes directory, along
with the safehtml.php script, define XML_HTMLSAX3 as a null string. */define(XML_HTMLSAX3, '' );// Include the class file.require_once ( 'classes/safehtml.php' );
// Define some sample bad code.
$data = This data would raise an alert
" ;// Create a safehtml object.$safehtml = new safehtml();// Parse and sanitize the data.$safe_data = $safehtml -parse( $data );// Display result. echo 'The sanitized data is ' . $safe_data ;
?
SafeHTML并不能完全防止XSS攻击,只是一个相对复杂的脚本来检验的方式。
使用单向HASH加密方式来保护数据
单向hash加密保证对每个用户的密码都是唯一的,而且不能被破译的,只有最终用户知道密码,系统也是不知道原始密码的。这样的一个好处是在系统被攻击后攻击者也无法知道原始密码数据。加密和Hash是不同的两个过程。与加密不同,Hash是无法被解密的,是单向的;同时两个不同的字符串可能会得到同一个hash值,并不能保证hash值的唯一性。MD5函数处理过的hash值基本不能被破解,但是总是有可能性的,而且网上也有MD5的hash字典。
使用mcrypt加密数据MD5 hash函数可以在可读的表单中显示数据,但是对于存储用户的信用卡信息的时候,需要进行加密处理后存储,并且需要之后进行解密。最好的方法是使用mcrypt模块,这个模块包含了超过30中加密方式来保证只有加密者才能解密数据。
?php$data = "Stuff you want encrypted" ;
$key = "Secret passphrase used to encrypt your data" ;
$cipher = "MCRYPT_SERPENT_256" $mode = "MCRYPT_MODE_CBC" ;function encrypt( $data, $key , cipher , $mode ) {// Encrypt datareturn (string) base64_encode ( mcrypt_encrypt ( $cipher , substr (md5( $key ),0,mcrypt_get_key_size( $cipher , $mode )), $data , $mode , substr (md5( $key ),0,mcrypt_get_block_size( $cipher , $mode )) ) );
}function decrypt( $data , $key ,$cipher , $mode ) {// Decrypt data
return (string) mcrypt_decrypt ( $cipher , substr (md5( $key ),0,mcrypt_get_key_size( $cipher , $mode )), base64_decode ( $data ), $mode , substr (md5( $key ),0,mcrypt_get_block_size( $cipher , $mode )) );
}?
mcrypt函数需要以下信息:
1、待加密数据
2、用来加密和解密数据的key
3、用户选择的加密数据的特定算法(cipher:
如 MCRYPT_TWOFISH192
,MCRYPT_SERPENT_256, MCRYPT_RC2
, MCRYPT_DES
, and MCRYPT_LOKI97
)
4、用来加密的模式
5、加密的种子,用来起始加密过程的数据,是一个额外的二进制数据用来初始化加密算法
6、加密key和种子的长度,使用mcrypt_get_key_size函数和mcrypt_get_block_size函数可以获取如果数据和key都被盗取,那么攻击者可以遍历ciphers寻找开行的方式即可,因此我们需要将加密的key进行MD5一次后保证安全性。同时由于mcrypt函数返回的加密数据是一个二进制数据,这样保存到数据库字段中会引起其他错误,使用了base64encode将这些数据转换为了十六进制数方便保存。
;
PHP需要掌握的知识还是比较多的,最基本的比如:PHP基本的语法、php框架以及CMS、mysql数据库设计表、mysql数据库的基本SQL语句。现在一般PHP的都得会前端,那就包括:js/ajax、html、css。如果更高点层次的就是linux服务器。
PHP攻城狮践行学习路线图:
1、用集成环境安装PHP环境,一定要记住这一点,不要自己分开去装,尤其是自学的朋友。不然你会觉得很复杂,会没有信心学下去的。也要注意任何高手都不是一蹴而就的,是一步一步,不同的阶段历练才有最后的沉淀。
2、先了解一些基本的变量类型,语法,函数,基本逻辑,写简单的代码。前期以尝试,培养兴趣为主。这段时间是打基础很好的时候,这个会影响你后面的发展,不过也可以在后期去完善。
3、这时候你可能觉得PHP就这样,没什么难度,或者有的觉得太难了,简直一脸疑惑。这个到底有什么用。在这时候一定要坚持下来,可以试试先放一下,别太较真。慢慢的困惑你的会被你领悟的。这时,建议学习html+css+js,缓解自己的压力,这个相对简单,简历信心。尤其是js,总结其实有相同的思路,可以结合着一起体会。
4、这些都感觉有80%了解就可以先放放了,现在在学习MySQL,也是先了解基础的。这个是干什么的,我可以用它做什么。因为之前装的集成环境。为什么感觉是凌乱的,我想告诉你的是,一是不要在自己没能力解决问题的时候死磕,浪费时间,丧失信心。这时候我们要做的是学习壮大自己,不要灰心。二是我本来觉得这一切都了解才是完整的。我们的目标也是要把这些都做好,这才是一个合格的PHP程序员。
5、这一切都顺利的话,你基本离预设的目标不远了,完成了整个学习的70%了。后面的是在之前的基础上升华。把HTML和css、js结合、静态文件和PHP结合、PHP和MySQL结合。这个阶段可能越到的问题会异常的多,一定要学会解决问题。网上很多都是答案,同样你要学会问问题。
6、这些之后你基本已经快到学习的尾声了,但还缺少经验。这时,你可以看一些网上开源的cms,例如织梦,国内用的多,越到问题好解决。看看一些视频(网上免费的很多),查漏补缺,总结归纳形成自己的知识体系。是时候该准备庆祝下自己这段的时间没有白费(一般2到3各月,看平时每天花的时间),基本成为一个合格的PHP程序员了。也该恭喜你了,其实并不那么难。坚持,坚持;努力,努力;学习,学习
结语:以上就是编程笔记为大家介绍的关于怎么做好php的全部内容了,希望对大家有所帮助,如果你还想了解更多这方面的信息,记得收藏关注本站。