if(isset($_POST['email']))
$email=$_POST['email'];
else  if(isset($_GET['email']))
$email=$_GET['email'];
你看看php.ini中的error_reporting设置并贴上来, 这个错误可能是你启用了E_STRICT 严格检查模式,呵呵。

解决方案 »

  1.   

    你很有趣!
    知道检查$_POST是否存在
    却不检查$_GET的存在$_POST不存在时$_GET就一定存在吗?干脆
    php.ini中error_reporting = E_ALL & ~E_NOTICE
    或在程序开头加上:
    error_reporting(E_ALL & ~E_NOTICE);
    屏蔽掉此类警告好了
      

  2.   

    php.ini 全是默认,问题就在于两台机器为什么一台没有问题,一台有提示呢?
      

  3.   

    全是默认也不一定设定相同啊。你不是同一个php文件装出来的吧。
    error_reporting(E_ALL & ~E_NOTICE);
    这个好。我们都用他。
      

  4.   

    why don't you only use post or get??
      

  5.   

    感觉两个系统的php.ini应该不同
    检查一下两个系统的%windir%\php.ini传递过来的参数哪里不对
    像这样的写法
     if(isset($_POST['email']))$email=$_POST['email'];
              else $email=$_GET['email'];不如换用
    $email=$_REQUEST['email'];
      

  6.   

    在文件include加的也可以是这个格式
    error_reporting(E_ALL^E_NOTICE);
      

  7.   

    换了浏览器K-MeleonCCF就不报错了,而且也能得到正确的参数。原来用的是腾讯TT,为什么呢?
      

  8.   

    IE也没有问题,难道是腾讯tt的问题?可是为什么会出现这样的问题呢?
      

  9.   

    不光是IE还和操作系统有关系,很纳闷2000和xp都用IE6.0而ActiveX2000有好多不支持,不然要打很多补丁,不过FireFox就好多了,不过后者对CSS的兼容有不太一样,很难!!开发B/S的系统认识面要很广……