【问题标题】:for loop in php iterationphp迭代中的for循环
【发布时间】:2017-11-08 11:04:29
【问题描述】:
$j=0;
for ($i=0; $i<31 ; $i++) {
    $t_bills = 0;
    # code...
    if($i<9){
        $j='0'.($i+1);
    }else{
        $j=($i+1);
    }
    $finaldate= $current_year.'-'.$current_month.'-'.$j;
    echo "............";
    echo "<br>";
    echo "finsal date is";
    echo("<br>");
    echo $finaldate;
    echo "</br>";
    //print_r($row);
    $tt_bills=0;
    //echo mysqli_num_rows($run);
    $strQuery ="SELECT bills,r_date FROM  daily_machine_record where (`r_date` = '$finaldate' )";
    $run= mysqli_query($dbhandle,$strQuery);
    while($row = mysqli_fetch_array($run))
    {
        if($finaldate==$row['r_date']){
            for ($x=0; $x <mysqli_num_rows($run) ;$x++ ) {

                echo "............";
                echo "<br>";
                echo $finaldate;
                echo "<br>";
                echo "bill is";
                echo "<br>";
                echo $row['bills'];
                echo "<br>";
                echo "............";
                echo "<br>";
                echo $tt_bills +=  $row['bills'];
                echo "<br>";
                echo "............";
                echo("<br>");
    //var_dump($tt_bill);
            }
        }
        else{

            echo $tt_bills =$tt_bills+ 0;
        }
    }

我想获取存储在我的数据库中的当月每个日期的账单价值。我有一个问题。即当循环执行时,它会生成账单金额,但在日期相同的情况下,它返回的值会增加 2 倍,就像 2017:11:06 的值为 100 并且在同一日期我有另一个值 100我收到的账单总额将是 400 而不是 200。

【问题讨论】:

    标签: php sql arrays


    【解决方案1】:

    您需要更改 else 条件。仅将 0 重新分配给变量

    else{
    
     echo $tt_bills =  0;
    }
    

    编辑

    同时删除不必要的for loop 否则您的结果将重复

    【讨论】:

    • 它正在返回相同的输出。就像我在同一日期有 3 条记录一样,它返回 9 条记录的数量,例如,如果 10 ,10 ,10 应该是 30 它返回 90 而不是
    • 你有多个循环。删除 for ($x=0; $x &lt;mysqli_num_rows($run) ;$x++ ) {,因为 while 正在做你想做的工作
    • 救命稻草。是的,这确实是问题所在。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-20
    • 2012-05-10
    • 2012-06-27
    • 1970-01-01
    • 2023-03-05
    • 1970-01-01
    相关资源
    最近更新 更多