2015-06-07 20 views
5

tôi có một biến là một chuỗi có số div trong html. và im cố gắng bao gồm một số trong đó bắt đầu từ một và tăng tự động sao cho mỗi div được đánh số theo thứ tự tăng dần.biến tăng tự động trong khi vòng lặp

while ($row9 = mysqli_fetch_array($query, MYSQLI_ASSOC)) { 
$catname9 = $row9["catname"]; 
$statusid9 = $row9["id"]; 
$i = 1; 

này là khi tôi ^^

đây là chuỗi của tôi mà tôi vang liên tục cho đến khi nó đạt đến cuối gọi sql bảng câu tôi

$list9 .= '<div id="each9" style="margin-top:3px" onclick="moveTo(\'.main\', '.$i.');"></div> 

sau đó tôi vang

<?php echo $list9; ?> 

vì vậy làm cách nào để tôi thực hiện cái đầu tiên 1, sau đó lặp lại 2 và lặp lại thứ ba 3

+1

thay vì '$ i = 1;' thử '$ i ++;' đó là phiên bản ngắn hơn của '$ i = $ i + 1;' –

+0

này nên được niêm yết là câu trả lời, Jan –

+0

thats it !!!!! cảm ơn bạn !! – peter

Trả lời

4

Thiết lập vòng lặp while của bạn như vậy:

$i = 1; 
while ($row9 = mysqli_fetch_array($query, MYSQLI_ASSOC)) { 

    // looped logic here 

    $i++; 
} 

Điều quan trọng ở đây là để khởi tạo bộ đếm trước vòng lặp, và tăng nó trên mỗi lần lặp.

Bạn cũng có thể tăng số tiền bằng số tiền khác nếu muốn. Chỉ cần thay thế $i++ bằng $i += 2;

1

Khởi tạo biến bằng cách $i=1 như:

$i = 1; 
while ($row9 = mysqli_fetch_array($query, MYSQLI_ASSOC)) { 

echo $i; // will print 1,2,3 to number of count. 
$i++; 
} 
0

Trước hết, bạn sẽ phải khai báo biến chỉ số trước khi vòng lặp while.
Nếu bạn khai báo nó bên trong, nó sẽ là một biến mới mỗi khi nó lặp lại.
Khi điều đó được thực hiện, bạn sẽ cần phải tăng biến cho mỗi lần lặp lại, điều này có thể được thực hiện bằng cách $i++ hoặc $i+=1.

Nếu bạn muốn nó bắt đầu bằng 1 và tăng, hãy đặt nó thành 1 từ đầu và tăng nó lên 1 tại số kết thúc của vòng lặp.

Giống như:

$index = 1; 
while(...) { 
    // Do stuff... 
    $index++; // increase. 
} 
+1

Tôi nghĩ rằng một vòng lặp 'for' là không cần thiết ở đây. Nó làm cho tình huống trở nên quá mức. 'while' và' foreach' là lựa chọn tốt hơn khi nói đến mảng truyền tải. –

+0

Có, tôi sẽ đích thân đi với vòng lặp while ở đây. Không thực sự chắc chắn lý do tại sao tôi đã thêm một phần cho vòng lặp, đã suy nghĩ về nó kể từ khi tôi đã làm, bệnh loại bỏ một phần không gây nhầm lẫn;) – Jite

Các vấn đề liên quan