表单数据的提交处理newUser.php是主页面的框架下的一个子页面,其中提交表单时用到了页面adduser.php
<form id="Addusers" name="Addusers" method="post" action="./conn/adduser.php">而adduser.php又用到了func.php中的函数
include "func.php";
//include "./func.php";
这两种写法都会造成执行操作失败:
HTTP 错误 500.0 - Internal Server Error即使把引用func.php中函数的语句全部屏蔽,只保留这一句include也一样会出错。
但只要把这句屏蔽,然后执行其它操作,就成功了......
说明肯定是这一句的问题。求解决办法。相关的文件路径结构如下:主目录:test/
pubmain.php
newUser.php
conn/adduser.php
conn/func.php是不是我设置的问题呢?

解决方案 »

  1.   

    看着adduser.php和func.php都在同一目录,不应该出错。
    但是你并没有开启错误提示,所以不能否定其它方面没问题。例如func.php语法上有错误导致致命错误。
    所以,修改php.ini display_errors = On 重启服务器,看看错误提示再说
      

  2.   

    如果在adduser.php的末尾添加
    include "func.php";
    则处理成功。但是问题是这样子就无法引用它的函数了......
      

  3.   

    我倒
    我刚才已经说了,最后一句话。
    或者你可以在代码前面加上一句代码: error_reporting( E_ALL | E_NOTICE );
      

  4.   

    我的意思是在哪里看呢?已经on了,但是火狐里面看不到呀,就一个http error 500之类的错误页面,里面的超链接都是指向iis官网的。你们是说下面的提示吗?好像没有用呀---------------------------------------------------------------------------------------
    模块 FastCgiModule
    通知 ExecuteRequestHandler
    处理程序 PHP_via_FastCGI
    错误代码 0x00000000
    请求的 URL http://localhost:80/test/conn/adduser.php
    物理路径 C:\inetpub\wwwroot\test\conn\adduser.php
    登录方法 匿名
    登录用户 匿名----------------------------------------------------------------------------------------------    确保 web.config 文件的 NTFS 权限正确,并允许访问 Web 服务器的计算机帐户。
        检查事件日志中是否记录了任何附加信息。
        确认 DLL 的权限。
        如果请求被映射到托管处理程序,则安装 .NET 可扩展功能。
        创建跟踪规则以跟踪此 HTTP 状态代码的失败的请求。有关为失败的请求创建跟踪规则的详细信息,请单击此处。--------------------------------------------------------------------------------------------加上这个error_reporting( E_ALL | E_NOTICE );有啥用呢?我现在用的是Editplus编辑器,运行环境是firefox + firebug,根本就没有啥子提示呀?
      

  5.   

    找了一篇博文,看着改一下吧。
    http://blog.163.com/pcrat@yeah/blog/static/63366962200911824944386/
    没有错误提示,全凭猜测来解决问题是效率低下的工作方式,不如先花点时间了解一下调试技巧
      

  6.   

    十分感谢楼上的大侠,果然露两手就与众不同了
    我把这两句添加到主框架、子框架页面都不提示,最后添加到交互页面上就显示了!
    ini_set('display_errors',1);
    error_reporting(E_ALL);Parse error: syntax error, unexpected T_STRING in C:\inetpub\wwwroot\test\conn\func.php on line 37
    原来是function写成了fuction。对各位大侠的景仰犹如滔滔江水,绵绵不绝
      

  7.   

    确实editplus效率太低了,我为了找错误得一段一段屏蔽,要是能像vs那样就方便了,断点、单步执行、实时监控。哎,看来开源的东西也有缺点呀
      

  8.   

    在PHP中包含文件最好:
    include (dirname(__FILE__) . "/initialize.php");
    include (dirname(__FILE__) . "/../mode/mysql_mode_class.php");
    因为在php中的包含是以当前执行页面为基层的。