2015-06-07 17 views
5

Mam zmienną, która jest łańcuchem z elementami div w html. i próbuję dołączyć do niego liczbę, która zaczyna się od jednej i automatycznie zwiększa, tak aby każdy element div był ponumerowany w porządku rosnącym.Automatyczna inkrementacja zmiennej w pętli while

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

to moja podczas ^^

to mój ciąg że wielokrotnie powtórzyć, aż osiągnie koniec mojej nazwie tabeli sql vv

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

Potem echo

<?php echo $list9; ?> 

tak jak zrobić pierwszy 1 następnie drugi powtórzyć 2 i trzeci powtórzyć 3

+1

zamiast '$ i = 1;' spróbuj '$ i ++;' która jest krótsza wersja '$ i = $ i + 1;' –

+0

ta powinna być wysłana jako odpowiedź –

+0

to wszystko !!!!! Dziękuję Ci !! – peter

Odpowiedz

4

Skonfiguruj pętli while tak:

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

    // looped logic here 

    $i++; 
} 

Ważną rzeczą jest to, aby zainicjować licznik przed pętla i zwiększyć ją w każdej iteracji.

Możesz również zwiększyć go o inne kwoty, jeśli chcesz. Po prostu zamień $i++ na $i += 2;

1

inicjalizację zmiennej przez $i=1 jak:

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

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

Po pierwsze, trzeba będzie zadeklarować zmienną indeksu przed pętli while.
Jeśli zadeklarujesz to w środku, będzie to nowa zmienna za każdym razem, gdy będzie wykonywana iteracja.
Po wykonaniu tej czynności należy zwiększyć wartość zmiennej dla każdej iteracji, można to wykonać za pomocą $i++ lub $i+=1.

Jeśli chcesz rozpocząć od 1 i zwiększenia, ustaw go na 1 od początku i zwiększ o 1 na koniec pętli.

odczuwalna:

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

Myślę, że pętla 'for' jest tutaj niepotrzebna. To komplikuje sytuację. 'while' i' foreach' są lepszym wyborem, jeśli chodzi o przechodzenie tablic. –

+0

Tak, osobiście wybrałbym tutaj pętlę while. Nie jestem do końca pewien, dlaczego dodałem część do pętli, myślałem o tym odkąd to zrobiłem, źle usuń tę część, aby nie spowodować zamieszania;) – Jite

Powiązane problemy