1.一个html文件通过表单向php文件传送数据,如何在php文件里得知这个html文件的文件名(是文件名,比如,hello.html)
2.php文件通过ajax向一个html文件输出数据(ajax包含在html文件中),如何在php文件中得知这个html文件的文件名突然想到这两个问题,请教各位大神,这是有解的问题不

解决方案 »

  1.   

    1, 
    ① referer 
    ② 生成html的表单的时候藏一个input
    ③ 访问html页面的时候设置一个cookie记录URL
    ④ 访问html页面的时候使用session记录URL2,
    php文件通过ajax是啥玩意?
      

  2.   

    两个问题可以合并了。浏览器似乎会在提交表单的同时,在head报头中附带referer。这样你可以通过 
    $_SERVER['HTTP_REFERER']来获取发起请求的文件名。
    例如  
    if(isset($_SERVER['HTTP_REFERER']) ){
        $urlinfo = parse_url($_SERVER['HTTP_REFERER']);
        $filename = basename($urlinfo['path']);
    } // 我不确定是否是所有浏览器都这样
    如果希望作用到每个用户,可以通过 ajax的setRequestHeader()方法或在表单里添加一个隐藏项保存本文件的Url地址,连同表单数据一起发送到服务器端。
      

  3.   

    如果是从安全的角度上去使用$_SERVER['HTTP_REFERER'] 不如不用.
      

  4.   

    多谢各位,
    第二个问题其实是说php文件向html文件输出数据,要在php里获得html的文件名,
    现在看来是同一个问题