Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/271.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用if-else…直到最后日期循环1的php代码_Php_Mysql - Fatal编程技术网

使用if-else…直到最后日期循环1的php代码

使用if-else…直到最后日期循环1的php代码,php,mysql,Php,Mysql,表格收据 我正在从表中选择min coupondate和max coupondate 下面是我的问题 SELECT RE.*,min(RE.coupondate) As mindate,max(RE.coupondate) As Maxdate FROM receipt_entry RE GROUP BY RE.receipt_no 接下来,我在表单中使用fromdate和todate文本框 如果用户输入fromdate=01-05-2015和todate=31-05-2015..则我将显示

表格收据

我正在从表中选择min coupondate和max coupondate

下面是我的问题

SELECT RE.*,min(RE.coupondate) As mindate,max(RE.coupondate) As Maxdate FROM receipt_entry RE  GROUP BY RE.receipt_no
接下来,我在表单中使用fromdate和todate文本框

如果用户输入fromdate=01-05-2015和todate=31-05-2015..则我将显示这两个日期之间的所有日期,如下面的示例

01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18  ......upto ....31
我使用下面的代码来显示两个日期之间的所有日期

我尝试在下面的代码中打印1,它从mindate开始,到31结束

但是我的代码只在mindate下面显示1..就是这样


$row['mindate']是日期,$x是整数。我说的对吗?你的输出是正确的$行['mindate']只能是一个日期,不能是一个范围。检查您的查询。选择RE.*,minRE.coupondate作为mindate,maxRE.coupondate作为Maxdate。所以,在你的循环中,只有一个日期可以验证你的if条件,但如何才能得到我的预期输出…请…帮助…如果你理解我的问题…我需要打印1,从我的思维开始直到最后一天31。。
01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18  ......upto ....31
<?php
$startdate = $_POST['fromdate']; 
$enddate = $_POST['todate'];
$start = date('d', strtotime($startdate));
$end=date('d', strtotime($enddate));
?>
<?php for ($x = $start; $x <= $end; $x++) {?>
    <th width="58%"><?php echo $x; ?></th>
    <?php } ?>
01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 ....31
    1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1      1
<?php  if (is_array($data)) { foreach($data as $row)    {   ?>
<tbody>
    <tr>                    
        <td><?php echo htmlspecialchars($row['customer_name']); ?></td>
        <td><?php echo htmlspecialchars($row['startingdate']); ?></td>
        <td><?php echo htmlspecialchars($row['coupondate']); ?></td>

        <?php for ($x = $start; $x <= $end; $x++) { ?>  

            <?php if($row['mindate']== $x) { ?> 
            <td>1</td>          
            <?php } else {?>
            <td>-</td>
            <?php } ?>  

        <?php } ?>  
    </tr>
    <?php } }?>
01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 ....31
-   1  -  -  -  -   -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -      -