Помогите с моей фанкой цикла PHP - PullRequest
1 голос
/ 30 ноября 2010

Хорошо, у меня есть страница , и при просмотре в Firefox отображаются правильные результаты, но когда я смотрю на них в Chrome или Safari, это далеко.Может быть, это фанк-цикл php, который я использую, который отключает его в браузерах .. Вот мой код

Я генерирую левый и правый массив .. кажется мне хаком

    $left = array();
    $right = array();
$finaltot=0.00;
 for($i=0;$i<count($steps);$i++)
{               
$sql="SELECT *  FROM configure_system WHERE EstimateID='".$_SESSION['ESTQUOTE']."' AND StepID=".($i+1) ;
$expstep=ExecuteGetRows($sql);


if ($i % 2 == 0) {
      $sql="SELECT SUM(TotalPrice) AS TOT FROM configure_system WHERE EstimateID='".$_SESSION['ESTQUOTE']."' AND StepID=".($i+1);
      $tots=ExecuteGetRows($sql);
    $left["Step"][$i][]  = $steps[$i];
    $left["expstep"][$i][]  = $expstep;
    $left["final_total"][$i][] = $tots[0]['TOT'];
    $finaltot+=$tots[0]['TOT'];
  } else {    
   $sql="SELECT SUM(TotalPrice) AS TOT FROM configure_system WHERE EstimateID='".$_SESSION['ESTQUOTE']."' AND StepID=".($i+1);
   $tots=ExecuteGetRows($sql);
    $right["Step"][$i][]  = $steps[$i];
    $right["expstep"][$i][]  = $expstep;
    $left["final_total"][$i][] = $tots[0]['TOT'];
    $finaltot+=$tots[0]['TOT'];

 }

тогда, так как левый массив имеет только 0,2,4,6,8,10, а правый имеет 1,3,5,7,9,11

, поэтому мои циклы такие

<?php for($i=0;$i<count($left['Step']) * 2;$i++) { ?> 
      <?php $i++; ?>
<?php } ?>

<?php for($i=1;$i<count($right['Step'])* 2;$i++) { ?> 
      <?php $i++; ?>
<?php } ?>

Так что, как вы видите, код немного не в порядке, и я думаю, что, возможно, проблема в том, почему отключены safari и chrome ... любые предложения

1 Ответ

1 голос
/ 30 ноября 2010

Почему бы не использовать foreach вместо этого?

foreach ($right['Step'] as $i => $val) {
     // ...
}

Также вы можете получить те же результаты только с одним запросом:

  SELECT SUM(TotalPrice) AS TOT
    FROM configure_system
   WHERE EstimateID='".$_SESSION['ESTQUOTE']."'
GROUP BY StepID
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...