2014-12-23 2 views
-2

데이터베이스에서 가져온 각 단계마다 단계 번호를 늘리려고합니다. 여기 내 코드는 다음과 같습니다.변수 자동 증가

//get the project steps 
$ID=mysqli_real_escape_string($con,$_GET['id']);   
     $projSteps="SELECT project_steps.projectStepDesc,project_steps.projectID FROM project_steps WHERE project_steps.projectID=$ID"; 
    $results1 = mysqli_query($con,$projSteps); 
    if (!$results1) { 
printf("Error: %s\n", mysqli_error($con)); 
exit(); 
} 
     if (mysqli_num_rows($results1) > 0){ 
     echo '<h2>Project Steps:</h2>';   

while ($rows = mysqli_fetch_assoc($results1)) 
    { 
     $a=1; 
     echo "Step ". $a++ ."<br />"; 
     $psteps=$rows['projectStepDesc']; 
     echo '<div id="steps">'; 
     echo "$psteps"; 
     echo '</div>'; 
     }}//end project steps 

이것은 각 단계마다 1 단계 만 출력합니다. 나는 1 단계, 2 단계, 3 단계 등을 말하도록 노력하고있다. 내가 어떻게 할 수 있니?

+2

'while'루프가 시작되기 전에'$ a = 1'을 초기화하십시오. 이는 매우 중요합니다. 또는 반복 할 때마다 1로 재설정됩니다. –

+2

put ** $ a = 1 ** ** ** ** outside – donald123

답변

3

while 루프 내에서 카운터를 선언하고 있습니다. 루프를 반복 할 때마다 $a = 1;이 호출되므로 작동하지 않습니다. 변경 :

while ($rows = mysqli_fetch_assoc($results1)) 
    { 
     $a=1; 

하려면 다음마다 1에 변화를 가져옵니다의

$a=1; 
while ($rows = mysqli_fetch_assoc($results1)) 
    { 
+0

이것은 훌륭하게 작동했습니다 ... 내가 그걸 놓친 이유를 모르겠지만 ... 나는이 대답에 투표 할 것입니다. 내 질문을 upvote 수 있습니까? – user3251779

+0

예. 놓치기 쉬운 일이지만 실수로 배우면 괜찮을 것입니다. 건배! –

2

매번 루프 내에 $a = 1을 설정하고 있습니다. 그것을 루프 외부에 놓으십시오.

0

당신은 넣어 가지고 $의 A = 1 동안 외부는 루프 값을 현명 다른 실행하면.

$ID=mysqli_real_escape_string($con,$_GET['id']);   
    $projSteps="SELECT project_steps.projectStepDesc,project_steps.projectID FROM   project_steps WHERE project_steps.projectID=$ID"; 
$results1 = mysqli_query($con,$projSteps); 
if (!$results1) { 
     printf("Error: %s\n", mysqli_error($con)); 
    exit(); 
    } 
    if (mysqli_num_rows($results1) > 0){ 
    echo '<h2>Project Steps:</h2>';   
    $a=1; 
     while ($rows = mysqli_fetch_assoc($results1)) 
    { 

    echo "Step ". $a++ ."<br />"; 
    $psteps=$rows['projectStepDesc']; 
    echo '<div id="steps">'; 
    echo "$psteps"; 
    echo '</div>'; 
    }}//end project steps