同一网段的机器,可以访问页面,但涉及到日期选择,时间选择时候,感觉变量不进行传递。 在本机测试是毫无问题的,是否哪里配置不对,还是需要加什么声明呢?  谢谢各位大侠,急求答案!

解决方案 »

  1.   

    你想对日期做什么操作?
    你要分清楚服务段代码和客户端代码的区别,PHP操作的是服务器的日期。
    当本机做服务器的时候当然可以操作本机的日期,但是当你的程序放到其他服务器上后,它是不能操作客户机的日期的。
      

  2.   

    客户端对日期进行选择,然后把变量传递到服务器,根据客户端选择的日期时间把相应文件名的文件显示到网页上
    我好像明白点你的意思了,那我该怎么做呢~~~ 日期选择是用个js脚本做的,时间就是select,貌似我真是只针对服务器编的代码
      

  3.   

    js脚本获取客户端的时间,然后用表单或者Ajax提交给服务器处理
      

  4.   

    这是我的代码不知道怎么改~<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" >
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <title>µØÃæ×Ô¶¯Õ¾ÖðСʱ¹Û²â×ÊÁÏÖÊÁ¿¼ìÑ鱨¸æ</title>
    <script language="javascript" src="calendar.js" type="text/javascript"></script>
    <script language="JavaScript" type="text/JavaScript">
    function init()
    {
    var now=new Date();
    var year=now.getFullYear();
    var month=now.getMonth()+1;
    var day=now.getDate();    
    if(month.length<2)
    month="0"+month;
    if(day.length<2)
    day="0"+day;
    document.getElementById("cal").value=year+"-"+month+"-"+day;
    }
    function form_submit()
    {
    //alert(document.form1.cal.value);
    //alert(new Date());
    var now=new Date();
    var year=now.getUTCFullYear();
    var month=now.getUTCMonth()+1;
    var day=now.getUTCDate();    
    if(month<10)
    month="0"+month;
    if(day<10)
    day="0"+day;
    var today=year+""+month+""+day;
    //alert(torday);
    today=parseInt(today);
    var queryday=document.form1.cal.value;
    while(queryday.indexOf("-")!=-1)
    queryday=queryday.replace("-","");
    queryday=parseInt(queryday);
    if(queryday>today)
    {
    alert("ÇëÖØÐÂÉèÖòéѯÈÕÆÚ");
    return;
    }
    document.form1.submit();
    //alert(queryday);
    }
    </script>
    <style type="text/css">
    body {
    background-color: #e8eaec;
    }
    .style4 {
    font-size: 36px;
    color: #FFFFFF;
    }
    .style7 {font-size: 14px}
    </style>
    </head><body>
    <?
    $now_day=$_POST["cal"];
    if(!isset($now_day))
    {
    $now_day=substr(date("YmdH",mktime(date("H"),0,0,date("m"),date("d"),date("Y"))),0,8);
    $now_day=substr($now_day,0,4)."-".substr($now_day,4,2)."-".substr($now_day,6,2);
    }$now_day_temp=$now_day;
    $now_day=str_replace("-","",trim($now_day));
    ?>
    <table width=900 height="100%" border="0" align="center">
      <tr>
        <td height="90" bgcolor="467aa7"><div align="center"><span class="style4"> µØÃæ×Ô¶¯Õ¾ÖðСʱ¹Û²â×ÊÁÏÖÊÁ¿¼ìÑ鱨¸æ</span></div></td>
      </tr>
      <tr>
        <td height="30" bgcolor="#A5C0DA"><form action="" method="post" name="form1" class="style7">
          <div align="center">Ñ¡Ôñ×ÊÁÏÀàÐÍ£º
              <select name="leibie">
                <option>µ¥ÓêÁ¿×ÊÁÏ</option>
                <option>×Ô¶¯Õ¾×ÊÁÏ</option>
              </select>  
            Ñ¡ÔñÈÕÆÚ£º
            <input name="cal" type="text" id="cal" onfocus="calendar()" value=<?=$now_day_temp?> size="15">
            Ñ¡Ôñʱ¼ä£º
    <select name="hour">
    <?
    for($i=0;$i<24;$i++)
    {
    if($i<10) $i="0".$i;
    if(gmdate("H")==$i)
    {
    echo"<option vaule=".$i." selected>".$i."</option>";
    }
    else
    {
    echo"<option vaule=".$i.">".$i."</option>";
    }
    }
    ?>
    </select>
    <input type="button" value="²éѯ" onclick="form_submit()">
          </div>
        </form></td>
      </tr>
      <tr>
        <td bgcolor="#D8E3EF">
    <div align="center"><font size=4>
    <?
    $path="f:/nas/zltb/qc/".substr($now_day,0,4)."/".substr($now_day,4,2)."/"; $leibie=$_REQUEST["leibie"];
    switch ($leibie){
       case "µ¥ÓêÁ¿×ÊÁÏ":
              $filesuf="PRF";
              break;
       case "×Ô¶¯Õ¾×ÊÁÏ":
             $filesuf="AWS";
             break;
    default: 
    $$filesuf="PRF";
    }

    $hh=$_REQUEST["hour"];

    $filename="Z_NOTES_C_BABJ_".$now_day.$hh."0000_R_QC_".$filesuf."_H_O.TXT";if(file_exists($path.$filename))
    {
    //echo"<iframe src=".$path.$filename." width=100% height=374></iframe>";
    echo"<textarea cols=125 rows=30>";
    include($path.$filename);
    echo"</textarea>";
    }
    else
    {
    echo"δ½ÓÊÕµ½¸Ãʱ´Î¼ìÑéͨ±¨£¡";
    echo $filename;
    }
    ?>
    </font></div>
    </td>
      </tr>
    </table>
    </body>
    </html>
      

  5.   

    里面有很多乱码,重贴一下代码,先格式化,然后用CSDN的代码高亮工具
      

  6.   

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" >
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <title>test</title>
    <script language="javascript" src="calendar.js" type="text/javascript"></script>
    <script language="JavaScript" type="text/JavaScript">
    function init()
    {
    var now=new Date();
    var year=now.getFullYear();
    var month=now.getMonth()+1;
    var day=now.getDate();    
    if(month.length<2)
    month="0"+month;
    if(day.length<2)
    day="0"+day;
    document.getElementById("cal").value=year+"-"+month+"-"+day;
    }
    function form_submit()
    {
    //alert(document.form1.cal.value);
    //alert(new Date());
    var now=new Date();
    var year=now.getUTCFullYear();
    var month=now.getUTCMonth()+1;
    var day=now.getUTCDate();    
    if(month<10)
    month="0"+month;
    if(day<10)
    day="0"+day;
    var today=year+""+month+""+day;
    //alert(torday);
    today=parseInt(today);
    var queryday=document.form1.cal.value;
    while(queryday.indexOf("-")!=-1)
    queryday=queryday.replace("-","");
    queryday=parseInt(queryday);
    if(queryday>today)
    {
    alert("重新查询");
    return;
    }
    document.form1.submit();
    //alert(queryday);
    }
    </script>
    <style type="text/css">
    body {
    background-color: #e8eaec;
    }
    .style4 {
    font-size: 36px;
    color: #FFFFFF;
    }
    .style7 {font-size: 14px}
    </style>
    </head><body>
    <?
    $now_day=$_POST["cal"];
    if(!isset($now_day))
    {
    $now_day=substr(date("YmdH",mktime(date("H"),0,0,date("m"),date("d"),date("Y"))),0,8);
    $now_day=substr($now_day,0,4)."-".substr($now_day,4,2)."-".substr($now_day,6,2);
    }$now_day_temp=$now_day;
    $now_day=str_replace("-","",trim($now_day));
    ?>
    <table width=900 height="100%" border="0" align="center">
      <tr>
        <td height="90" bgcolor="467aa7"><div align="center"><span class="style4">test</span></div></td>
      </tr>
      <tr>
        <td height="30" bgcolor="#A5C0DA"><form action="" method="post" name="form1" class="style7">
          <div align="center">选择类型
              <select name="leibie">
                <option>类型1</option>
                <option>类型2</option>
              </select>  
            选择日期
            <input name="cal" type="text" id="cal" onfocus="calendar()" value=<?=$now_day_temp?> size="15">
            选择时间
    <select name="hour">
    <?
    for($i=0;$i<24;$i++)
    {
    if($i<10) $i="0".$i;
    if(gmdate("H")==$i)
    {
    echo"<option vaule=".$i." selected>".$i."</option>";
    }
    else
    {
    echo"<option vaule=".$i.">".$i."</option>";
    }
    }
    ?>
    </select>
    <input type="button" value="查询" onclick="form_submit()">
          </div>
        </form></td>
      </tr>
      <tr>
        <td bgcolor="#D8E3EF">
    <div align="center"><font size=4>
    <?
    $path="f:/nas/zltb/qc/".substr($now_day,0,4)."/".substr($now_day,4,2)."/"; $leibie=$_REQUEST["leibie"];
    switch ($leibie){
       case "类型1":
              $filesuf="PRF";
              break;
       case "类型2":
             $filesuf="AWS";
             break;
    default: 
    $$filesuf="PRF";
    }

    $hh=$_REQUEST["hour"];

    $filename="Z_".$now_day.$hh."0000_R".$filesuf."_H.TXT";if(file_exists($path.$filename))
    {
    //echo"<iframe src=".$path.$filename." width=100% height=374></iframe>";
    echo"<textarea cols=125 rows=30>";
    include($path.$filename);
    echo"</textarea>";
    }
    else
    {
    echo"找不到该文件";
    echo $filename;
    }
    ?>
    </font></div>
    </td>
      </tr>
    </table>
    </body>
    </html>
      

  7.   

    js的函数form_submit中取的是客户机的时间下面这段输出的是服务器的时间
    <select name="hour">
    <?
    for($i=0;$i<24;$i++)
    {
        if($i<10) $i="0".$i;
        if(gmdate("H")==$i)
        {    
            echo"<option vaule=".$i." selected>".$i."</option>";
        }
        else
        {
            echo"<option vaule=".$i.">".$i."</option>";
        }
    }
    ?>
    </select>请问,你的具体需求是什么?以哪个时间为准?想要做什么?
      

  8.   

    以客户机时间为准,这个select只是选择小时数,默认想让它显示的是客户机时间-8,就是世界时~~~
    能改么
    其实想实现的功能很简单,就是客户端那里用日期控件选好日期,用select hour 这个选择时间,用这几个变量构成文件名,从服务器F盘找到相应文件,然后在网页显示出来~
      

  9.   

    从你的需求看,应该以服务器的时间为准,而客户只需要提交他要求的时间参数给服务器查询就可以了,而不是获取客户机的时间。
    简单修改了一下,没有调试过。如果运行有问题,你error_log输出你的调试信息看看是哪一步有问题。
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <title>test</title>
    <script language="javascript" src="calendar.js" type="text/javascript"></script>
    <script language="JavaScript" type="text/JavaScript">
    function init(){
        var now=new Date();
        var year=now.getFullYear();
        var month=now.getMonth()+1;
        var day=now.getDate();
        if(month.length<2){
            month="0"+month;
        }
        if(day.length<2){
            day="0"+day;
        }
        document.getElementById("cal").value=year+"-"+month+"-"+day;
    }
    function form_submit()
    {
        //alert(document.form1.cal.value);
        //alert(new Date());
        var now=new Date();
        var year=now.getUTCFullYear();
        var month=now.getUTCMonth()+1;
        var day=now.getUTCDate();
        if(month<10)
            month="0"+month;
        if(day<10)
            day="0"+day;
        var today=year+""+month+""+day;
        //alert(torday);
        today=parseInt(today);
        var queryday=document.form1.cal.value;
        while(queryday.indexOf("-")!=-1)
            queryday=queryday.replace("-","");
        queryday=parseInt(queryday);
        if(queryday>today)
        {
            alert("重新查询");
            return;
        }
        document.form1.submit();
        //alert(queryday);
    }
    </script>
    <style type="text/css">
    body {
    background-color: #e8eaec;
    }.style4 {
    font-size: 36px;
    color: #FFFFFF;
    }.style7 {
    font-size: 14px
    }
    </style>
    </head>
    <body>
    <?php
    $now_day = $_POST["cal"];
    if(!isset($_POST["cal"])){
    $now_day=substr(date("YmdH",mktime(date("H"),0,0,date("m"),date("d"),date("Y"))),0,8);
    $now_day=substr($now_day,0,4)."-".substr($now_day,4,2)."-".substr($now_day,6,2);
    }$now_day_temp=$now_day;
    $now_day=str_replace("-","",trim($now_day));
    ?>
    <table width=900 height="100%" border="0" align="center">
    <tr>
    <td height="90" bgcolor="467aa7">
    <div align="center"><span class="style4">test</span></div>
    </td>
    </tr>
    <tr>
    <td height="30" bgcolor="#A5C0DA">
    <form action="" method="post" name="form1" class="style7">
    <div align="center">选择类型 <select name="leibie">
    <option>类型1</option>
    <option>类型2</option>
    </select> 选择日期 <input name="cal" type="text" id="cal" onfocus="calendar()" value=<?=$now_day_temp?> size="15"> 选择时间 <select name="hour">
    <?php
    for($i=0;$i<24;$i++){
    if($i<10) $i="0".$i;
    if(gmdate("H")==$i)
    {
    echo"<option vaule=".$i." selected>".$i."</option>";
    }
    else
    {
    echo"<option vaule=".$i.">".$i."</option>";
    }
    }
    ?>
    </select> <input type="button" value="查询" onclick="form_submit()"></div>
    </form>
    </td>
    </tr>
    <tr>
    <td bgcolor="#D8E3EF">
    <div align="center"><font size=4> <?php
    $path="f:/nas/zltb/qc/".substr($now_day,0,4)."/".substr($now_day,4,2)."/";
    $leibie=$_REQUEST["leibie"];
    switch ($leibie){
    case "类型1":
    $filesuf="PRF";
    break;
    case "类型2":
    $filesuf="AWS";
    break;
    default:
    $$filesuf="PRF";
    }
    $hh=$_REQUEST["hour"];
    $filename="Z_".$now_day.$hh."0000_R".$filesuf."_H.TXT";
    if(file_exists($path.$filename)){
    //echo"<iframe src=".$path.$filename." width=100% height=374></iframe>";
    echo"<textarea cols=125 rows=30>";
    include($path.$filename);
    echo"</textarea>";
    }else{
    echo"找不到该文件";
    echo $filename;
    }
    ?> </font></div>
    </td>
    </tr>
    </table>
    </body>
    </html>
      

  10.   

    谢谢这位兄弟,试了你的代码,可以用,我现在发现之前在其它客户机不行很可能是浏览器安全级别太高~~ 
    现在还有两个问题,嘿,好人做到底吧
    1、我想实现打开网页时候,默认就$filename是当前日期时刻,然后就能找见文件,现在默认情况下好多日期$now_day是当前日期,但$hh 这个没有,也就是hour没找到~ 这就导致每次默认打开都找不到文件。。
    2、程序在我机器上可以,我的是apathe,XP,移植到服务器上IIS,WIN2003时,函数传递就失效了。。日期控件和时间选择都不起作用, 高手能判断啥问题吗