我本人对PHP也可以说是一知半解,本身是学的.NET,只能说是对编程有一个初步的了解,知道一些语法,算法等。就算是使用其他语言,相信它们之间都是大同小异,彼此是相通的。所以,即使是PHP大概也是很容易上手的。但想学精通,则很难。

今天编程,遇到了两个问题:

1、Warning: Cannot modify header information - headers already sent by (output started at…

首先要知道,出现这个问题的原因一般是使用了Header(),SetCookie(),Session等函数导致的。网上有很多种解决方法,但我没有去一一试过,因为方法太多未必是好事,而且很多方法不是根本性的解决这个问题,比如要在某个地方加代码解决的,我觉得那不是最好的方法,从提示可以看出:这是由于在使用这些函数之前就已经发送了信息到客户端,这是不被允许的。

所以,解决的方法就是:查看使用这些函数的语句,保证在这些语句使用之前不出现任何HTML代码,也就是不允许有输出到客户端的代码存在,请保证<?php……?>代码出现在文件前面,且前后不要出现空格。

2、两个相邻的按钮间,一个是提交(submit)按钮,另一个是普通按钮。但是出现的问题时,我明明点击的是普通按钮,结果居然也被提交到了服务器端了。

刚开始,我对这个问题百思不解,明明没问题,为什么会被提交呢?一开始我还以为是我的浏览器问题,因为在Chrome中会这样,但在IE中却不会。我想等我重启电脑后应该会正常吧,但今天我继续看的时候,问题还是没有解决。看来这不是浏览器的问题。却是程序哪里出了问题。

最后,我仔细一想,每个文本框,或是按钮之前,好像在Dreamweaver中生成的时候前后都加了<label>标签,很有可能就是这个东西在作怪。结果我一检查,发现两个按钮被同时包含在<label>和</label>之间,原来果然是这个的问题,但在IE中,对这些问题会忽略掉,但在Chrome或Firefox中,似乎没有,所以,给两个按钮每个都加上<label>标签后,问题就完美解决了。

最后总结出,问题虽小,却能浪费我们很多时间,让我们去查问题,解决问题。哪怕是很小的问题,作为编写代码人员,就必须要注意到这些细节,只有这样,才能够给用户最好的体验。而且要多测试,多发现问题,只有这样,自己才能够不断进步,写出来的程序用起来也才会更有感觉!

本文版权归“独语斜栏” 转载请注明:http://www.nannannan.com/post/24.html