开发者

php itertation loop in hidden input not iterating

开发者 https://www.devze.com 2023-03-29 00:52 出处:网络
I\'ve got one nagging little bug in this script. I\'m going through my cart items and passing them into hidden inputs. The cart_id ($obj->id) is working fine into the value=\"\" but my iteration loop

I've got one nagging little bug in this script. I'm going through my cart items and passing them into hidden inputs. The cart_id ($obj->id) is working fine into the value="" but my iteration loop that gives each value a unique name="" (cart_id_1, cart_id_2 etc) is NOT iterating.

<?php         

           $pass_cart_q = "SELECT c.id FROM开发者_JS百科 carts AS c WHERE c.user_session_id='$sid'";
           $result = $mysqli->query($pass_cart_q);

                    $i = 1; 
                while ($obj = $result->fetch_object()) {

                    echo "<input type=\"hidden\" name=\"cart_id_".$i."\" value=\"  .$obj->id.  \"><br>";  
                    $i = $i++;
                }
                mysqli_close();?>

Each name field is coming through as cart_id_1


$i=$i++;

That's the problem just do:

 $i++


Please replace $i = $i++; with just $i++.

$i = 1;
$i = $i++;

echo $i, "\n"; // 1

$i = 1;
$i = ++$i;

echo $i, "\n"; // 2

$i = 1;
$i++;

echo $i, "\n"; // 2

$i = 1;
++$i;

echo $i, "\n"; // 2


What $i = $i++ will cause it literally this: "make $i equal to $i and then increase it by one", but the $i will still remain the same. To solve this, simply replace $i = $i++; with $i++.

Manual Entry


you are assigning the incremented value to $i variable. and hence it is not able to iterate. instead you should remove that assignment variable $i and it should only be $i++

0

精彩评论

暂无评论...
验证码 换一张
取 消