html/php预设日期文本字段

html/php预设日期文本字段,php,html,Php,Html,我有一个html表单,有两个日期文本字段区域和两个按钮,根据日期间隔向用户提供不同的报告。刚开始还可以,但我把今天的时间设置为文本字段,这太疯狂了。我将日期分配给会话,以便其他report.php文件在那里查询SQL。我知道这太容易了,但我看不出这里到底出了什么问题。它不能给出正确的结果 我的索引页表单如下所示: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtm

我有一个html表单,有两个日期文本字段区域和两个按钮,根据日期间隔向用户提供不同的报告。刚开始还可以,但我把今天的时间设置为文本字段,这太疯狂了。我将日期分配给会话,以便其他report.php文件在那里查询SQL。我知道这太容易了,但我看不出这里到底出了什么问题。它不能给出正确的结果

我的索引页表单如下所示:

<!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">
<head>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=windows-1254">
<?
    include "head.inc";
    include("lib/config.php");
    include("lib/oracle.php");
    include("lib/smarty/Smarty.class.php");
    include("lib/tcpdf/tcpdf.php");
?>
<?php
     $db=new OracleDB();

     $d1=date('d/m/Y');
     $d2=date('d/m/Y');


?>
<title>Reports</title>
</head>
<script type="text/javascript">
         $(document).ready(function() {
            $("#DATE1").datepicker();
            $("#DATE2").datepicker(); 
        });

        function Report()
        {
            if($('#DATE1').val()=='' || $('#DATE2').val()=='')
            {
                 alert('Fill the dates');
                 return false;
            }
            else
            {
                window.open('report2.php');
            }
        }
        function Report_Group()
        {
            if($('#GIR_TAR').val()=='' || $('#BIT_TAR').val()=='')
            {
                 alert('Fill the dates');
                 return false;
            }
            else
            {
                window.open('report1.php');
            }
        }
</script>

<body>
<form name="FORM" action="report_index.php" method="post"> 
<table class="bordered" align="center">
<tr><th colspan="4" align="center"><b>Reports</b></th></tr>
<tr>
<td>date1:</td><td><input name="DATE1" id="DATE1" type="text" value="<?echo $d1;?>" /></td><td>date2:</td><td colspan="2"><input name="DATE2" id="DATE2" type="text" value="<?echo $d2;?>" /></td>
</tr>
<tr>
<th align="right" colspan="2" ><input type="submit" name="REPORT1" id="REPORT1" value="" class="INPUT_BUTTON" onclick="return Report_Group();"/></th><th colspan="3"><input type="submit" name="REPORT2" id="REPORT2" value="" class="INPUT_BUTTON" onClick="return Report();"/></th>
</tr>
</table></form>
</body>
</html>
<?php
     $db=new OracleDB();

     session_start();

     if (isset($_POST["REPORT1"])||isset($_POST["REPORT2"]))
     {
         $_SESSION["DATE1"]=$_POST["DATE1"];
         $_SESSION["DATE2"]=$_POST["DATE2"];
     }

?>

报告
$(文档).ready(函数(){
$(“#DATE1”).datepicker();
$(“#DATE2”).datepicker();
});
功能报告()
{
如果($('#DATE1').val()=''|$('#DATE2').val()='')
{
警报(“填写日期”);
返回false;
}
其他的
{
open('report2.php');
}
}
功能报告\u组()
{
if($('GIR_TAR').val()=''''.'BIT_TAR').val()='')
{
警报(“填写日期”);
返回false;
}
其他的
{
open('report1.php');
}
}
报告

date1:既然您要将表单发布到“report\u index.php”,您应该将实际保存日期的代码块移动到那里的
$\u SESSION
。即移动该部分:

<?php
    $db=new OracleDB();

    session_start();

    if (isset($_POST["REPORT1"]) || isset($_POST["REPORT2"])) {
        $_SESSION["DATE1"] = $_POST["DATE1"];
        $_SESSION["DATE2"] = $_POST["DATE2"];
    }
?>

从'index.php'到'report_index.php'

您的新“report_index.php”可能如下所示:

<?php
    session_start();
    $ret=false;  

    if (isset($_POST["REPORT1"]) || isset($_POST["REPORT2"])) {
        $_SESSION["DATE1"] = $_POST["DATE1"];
        $_SESSION["DATE2"] = $_POST["DATE2"];
    }

    include("../lib/config.php");
    include("../lib/oracle.php");
    include("../lib/smarty/Smarty.class.php");
    include("../lib/tcpdf/tcpdf.php");

    function Rapor_View($Title,$FileName) { ... }
    function Rapor_Pdf($Baslik,$FileName,$Html,$Page="A4",$Land="P") { ... }

    $db = new OracleDB();
    $DATE1 = $_SESSION["DATE1"];
    $DATE2 = $_SESSION["DATE2"];
    ...

“它疯了”不是有效的错误消息。怎么了?首先将您的doctype更改为“在索引页上选择日期时”,它不会将选择的日期传递给会话;就在课程开始之前。它给了你什么?它给了Report1的值。这是页面上两个按钮中的一个。我找到了问题所在。这是javascript代码。。我试图用window.open()打开新页面,所以下面的php代码(会话部分)无法正常工作。无论如何。谢谢你的时间!非常感谢!
<?php
    session_start();
    $ret=false;  

    if (isset($_POST["REPORT1"]) || isset($_POST["REPORT2"])) {
        $_SESSION["DATE1"] = $_POST["DATE1"];
        $_SESSION["DATE2"] = $_POST["DATE2"];
    }

    include("../lib/config.php");
    include("../lib/oracle.php");
    include("../lib/smarty/Smarty.class.php");
    include("../lib/tcpdf/tcpdf.php");

    function Rapor_View($Title,$FileName) { ... }
    function Rapor_Pdf($Baslik,$FileName,$Html,$Page="A4",$Land="P") { ... }

    $db = new OracleDB();
    $DATE1 = $_SESSION["DATE1"];
    $DATE2 = $_SESSION["DATE2"];
    ...