Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

ezequiel777888

Loop While dentro de um For

Recommended Posts

Saudações pessoal do iMasters
Preciso de apoio no desenvolvimento de um script de Loop para busca de cadastro com a seguinte Lógica
em minha Tabela usuário tenho o registro das pessoas, e esse registro funciona desta forma: usuário ID-X possui um campo chamado INDICADOR e ou com o nome INDICADO, Lógica é : Usuário X Indicou uma pessoa com seu numero de indicador... e a pessoa que foi indicada por usuário X indicou outra pessoa e assim sucessivamente. segue uma imagem para melhor compreensão .
Nivel 1
n1.png
​<?php
error_reporting(0);
include_once('autenticacao.php');
include_once('connect.php');
$email = $_SESSION['sess_login'];
$senha = $_SESSION['sess_pass'];
$Indicador = $_SESSION['Indicador'];



$SQL = mysqli_query($connect,"SELECT * FROM usuario WHERE Email='$email' AND Senha='$senha'");
while($resultSQL = mysqli_fetch_array($SQL)){

$infor[0]= $resultSQL['Nome']."<br>";
$infor[1]= $resultSQL['Email']."<br>";
$infor[2]= $resultSQL['Telefone']."<br>";
$infor[3]= $resultSQL['Indicador'];
$ID_Pagamento =$resultSQL['ID'];
$ID_Nome = $resultSQL['Nome'];
$ID_Email = $resultSQL['Email'];
$ID_Telefone = $resultSQL['Telefone'];


}
$i=0;
$SQL = mysqli_query($connect,"SELECT * FROM usuario WHERE Indicado='$infor[3]' ORDER BY ID ASC LIMIT 3 ");
while($show = mysqli_fetch_array($SQL)){
$Nome[$i] = $show['Nome'];
$ID[$i] = $show['Indicador'];
$Status[$i] = $show['Status']; $i++;




}
?>

<section>
<table>
<tr>
<th>Indicador</th>
<th>Indicados</th>

</tr>
<tr>
<td rowspan='3' width='300px'><?php echo $infor[0]."<br>"; echo $infor[1]."<br>";echo $infor[3]; ?></td>

<td><?php echo $Nome[0]."<br>"; echo $ID[0]; ?></td>
</tr>
<tr>
<td><?php echo $Nome[1]."<br>"; echo $ID[1]; ?></td>
</tr>
<tr>
<td><?php echo $Nome[2]."<br>"; echo $ID[2]; ?></td>
</tr>
</table>
</section>

 

Nivel 2
n2.png
<!-- Nivel 2 completo -->
<?php

//lista 1 nv 2
$i=3;
$SQL = mysqli_query($connect,"SELECT * FROM usuario WHERE Indicado='$ID[0]' ORDER BY ID ASC LIMIT 3 ");
while($show = mysqli_fetch_array($SQL)){
$Email[$i] = $show['Email'];
$Nome[$i] = $show['Nome'];
$ID[$i] = $show['Indicador'];
$Status[$i] = $show['Status']; $i++;
}?>

<table>
<tr>
<td rowspan='3' width='300px'><?php echo $Nome[0]."<br>"; echo $ID[0]."<br>";?></td>

<td><?php echo $Nome[3]."<br>"; echo $ID[3]; ?></td>
</tr>
<tr>
<td><?php echo $Nome[4]."<br>"; echo $ID[4]; ?></td>
</tr>
<tr>
<td><?php echo $Nome[5]."<br>"; echo $ID[5]; ?></td>
</tr>
</table>
<?php
//lista 2 nv 2
$i=6;
$SQL = mysqli_query($connect,"SELECT * FROM usuario WHERE Indicado='$ID[1]' ORDER BY ID ASC LIMIT 3 ");
while($show = mysqli_fetch_array($SQL)){
$Email[$i] = $show['Email'];
$Nome[$i] = $show['Nome'];
$ID[$i] = $show['Indicador'];
$Status[$i] = $show['Status']; $i++;
}?>

<table>
<tr>
<td rowspan='3' width='300px'><?php echo $Nome[1]."<br>"; echo $ID[1]."<br>";?></td>

<td><?php echo $Nome[6]."<br>"; echo $ID[6]; ?></td>
</tr>
<tr>
<td><?php echo $Nome[7]."<br>"; echo $ID[7]; ?></td>
</tr>
<tr>
<td><?php echo $Nome[8]."<br>"; echo $ID[8]; ?></td>
</tr>
</table>
<?php
//lista 3 nv 2
$i=9;
$SQL = mysqli_query($connect,"SELECT * FROM usuario WHERE Indicado='$ID[2]' ORDER BY ID ASC LIMIT 3 ");
while($show = mysqli_fetch_array($SQL)){
$Email[$i] = $show['Email'];
$Nome[$i] = $show['Nome'];
$ID[$i] = $show['Indicador'];
$Status[$i] = $show['Status']; $i++;
}?>

<table>
<tr>
<td rowspan='3' width='300px'><?php echo $Nome[2]."<br>"; echo $ID[2]."<br>";?></td>

<td><?php echo $Nome[9]."<br>"; echo $ID[9]; ?></td>
</tr>
<tr>
<td><?php echo $Nome[10]."<br>"; echo $ID[10]; ?></td>
</tr>
<tr>
<td><?php echo $Nome[11]."<br>"; echo $ID[11]; ?></td>
</tr>
</table>
<!-- Fim nivel 2 -->

 

Nivel 3
n3.png
<?php
//lista 1 nv 3
$i=12;
$SQL = mysqli_query($connect,"SELECT * FROM usuario WHERE Indicado='$ID[3]' ORDER BY ID ASC LIMIT 3 ");
while($show = mysqli_fetch_array($SQL)){
$Email[$i] = $show['Email'];
$Nome[$i] = $show['Nome'];
$ID[$i] = $show['Indicador'];
$Status[$i] = $show['Status']; $i++;
}?>

<table>
<tr>
<td rowspan='3' width='300px'><?php echo $Nome[3]."<br>"; echo $ID[3]."<br>";?></td>

<td><?php echo $Nome[12]."<br>"; echo $ID[12]; ?></td>
</tr>
<tr>
<td><?php echo $Nome[13]."<br>"; echo $ID[13]; ?></td>
</tr>
<tr>
<td><?php echo $Nome[14]."<br>"; echo $ID[14]; ?></td>
</tr>
</table>
<?php
//lista 2 nv 3
$i=15;
$SQL = mysqli_query($connect,"SELECT * FROM usuario WHERE Indicado='$ID[4]' ORDER BY ID ASC LIMIT 3 ");
while($show = mysqli_fetch_array($SQL)){
$Email[$i] = $show['Email'];
$Nome[$i] = $show['Nome'];
$ID[$i] = $show['Indicador'];
$Status[$i] = $show['Status']; $i++;
}?>

<table>
<tr>
<td rowspan='3' width='300px'><?php echo $Nome[4]."<br>"; echo $ID[4]."<br>";?></td>

<td><?php echo $Nome[15]."<br>"; echo $ID[15]; ?></td>
</tr>
<tr>
<td><?php echo $Nome[16]."<br>"; echo $ID[16]; ?></td>
</tr>
<tr>
<td><?php echo $Nome[17]."<br>"; echo $ID[17]; ?></td>
</tr>
</table>


<?php
//lista 3 nv 3
$i=18;
$SQL = mysqli_query($connect,"SELECT * FROM usuario WHERE Indicado='$ID[5]' ORDER BY ID ASC LIMIT 3 ");
while($show = mysqli_fetch_array($SQL)){
$Email[$i] = $show['Email'];
$Nome[$i] = $show['Nome'];
$ID[$i] = $show['Indicador'];
$Status[$i] = $show['Status']; $i++;
}?>

<table>
<tr>
<td rowspan='3' width='300px'><?php echo $Nome[5]."<br>"; echo $ID[5]."<br>";?></td>

<td><?php echo $Nome[18]."<br>"; echo $ID[18]; ?></td>
</tr>
<tr>
<td><?php echo $Nome[19]."<br>"; echo $ID[19]; ?></td>
</tr>
<tr>
<td><?php echo $Nome[20]."<br>"; echo $ID[20]; ?></td>
</tr>
</table>
<!-- Fim nivel 3 -->

<?php
//lista 4 nv 3
$i=21;
$SQL = mysqli_query($connect,"SELECT * FROM usuario WHERE Indicado='$ID[6]' ORDER BY ID ASC LIMIT 3 ");
while($show = mysqli_fetch_array($SQL)){
$Email[$i] = $show['Email'];
$Nome[$i] = $show['Nome'];
$ID[$i] = $show['Indicador'];
$Status[$i] = $show['Status']; $i++;
}?>

<table>
<tr>
<td rowspan='3' width='300px'><?php echo $Nome[6]."<br>"; echo $ID[6]."<br>";?></td>

<td><?php echo $Nome[21]."<br>"; echo $ID[21]; ?></td>
</tr>
<tr>
<td><?php echo $Nome[22]."<br>"; echo $ID[22]; ?></td>
</tr>
<tr>
<td><?php echo $Nome[23]."<br>"; echo $ID[23]; ?></td>
</tr>
</table>
<?php
//lista 5 nv 3
$i=24;
$SQL = mysqli_query($connect,"SELECT * FROM usuario WHERE Indicado='$ID[7]' ORDER BY ID ASC LIMIT 3 ");
while($show = mysqli_fetch_array($SQL)){
$Email[$i] = $show['Email'];
$Nome[$i] = $show['Nome'];
$ID[$i] = $show['Indicador'];
$Status[$i] = $show['Status']; $i++;
}?>

<table>
<tr>
<td rowspan='3' width='300px'><?php echo $Nome[7]."<br>"; echo $ID[7]."<br>";?></td>

<td><?php echo $Nome[24]."<br>"; echo $ID[24]; ?></td>
</tr>
<tr>
<td><?php echo $Nome[25]."<br>"; echo $ID[25]; ?></td>
</tr>
<tr>
<td><?php echo $Nome[26]."<br>"; echo $ID[26]; ?></td>
</tr>
</table>
<?php
//lista 6 nv 3
$i=27;
$SQL = mysqli_query($connect,"SELECT * FROM usuario WHERE Indicado='$ID[8]' ORDER BY ID ASC LIMIT 3 ");
while($show = mysqli_fetch_array($SQL)){
$Email[$i] = $show['Email'];
$Nome[$i] = $show['Nome'];
$ID[$i] = $show['Indicador'];
$Status[$i] = $show['Status']; $i++;
}?>

<table>
<tr>
<td rowspan='3' width='300px'><?php echo $Nome[8]."<br>"; echo $ID[8]."<br>";?></td>

<td><?php echo $Nome[27]."<br>"; echo $ID[27]; ?></td>
</tr>
<tr>
<td><?php echo $Nome[28]."<br>"; echo $ID[28]; ?></td>
</tr>
<tr>
<td><?php echo $Nome[29]."<br>"; echo $ID[29]; ?></td>
</tr>
</table>
<?php
//lista 7 nv 3
$i=30;
$SQL = mysqli_query($connect,"SELECT * FROM usuario WHERE Indicado='$ID[9]' ORDER BY ID ASC LIMIT 3 ");
while($show = mysqli_fetch_array($SQL)){
$Email[$i] = $show['Email'];
$Nome[$i] = $show['Nome'];
$ID[$i] = $show['Indicador'];
$Status[$i] = $show['Status']; $i++;
}?>

<table>
<tr>
<td rowspan='3' width='300px'><?php echo $Nome[9]."<br>"; echo $ID[9]."<br>";?></td>

<td><?php echo $Nome[30]."<br>"; echo $ID[30]; ?> </td>
</tr>
<tr>
<td><?php echo $Nome[31]."<br>"; echo $ID[31]; ?></td>
</tr>
<tr>
<td><?php echo $Nome[32]."<br>"; echo $ID[32]; ?></td>
</tr>
</table>
<?php
//lista 8 nv 3
$i=33;
$SQL = mysqli_query($connect,"SELECT * FROM usuario WHERE Indicado='$ID[10]' ORDER BY ID ASC LIMIT 3 ");
while($show = mysqli_fetch_array($SQL)){
$Email[$i] = $show['Email'];
$Nome[$i] = $show['Nome'];
$ID[$i] = $show['Indicador'];
$Status[$i] = $show['Status']; $i++;
}?>

<table>
<tr>
<td rowspan='3' width='300px'><?php echo $Nome[10]."<br>"; echo $ID[10]."<br>";?></td>

<td><?php echo $Nome[33]."<br>"; echo $ID[33]; ?></td>
</tr>
<tr>
<td><?php echo $Nome[34]."<br>"; echo $ID[34]; ?></td>
</tr>
<tr>
<td><?php echo $Nome[35]."<br>"; echo $ID[35]; ?></td>
</tr>
</table>

<?php
//lista 9 nv 3
$i=36;
$SQL = mysqli_query($connect,"SELECT * FROM usuario WHERE Indicado='$ID[11]' ORDER BY ID ASC LIMIT 3 ");
while($show = mysqli_fetch_array($SQL)){
$Email[$i] = $show['Email'];
$Nome[$i] = $show['Nome'];
$ID[$i] = $show['Indicador'];
$Status[$i] = $show['Status']; $i++;
}?>

<table>
<tr>
<td rowspan='3' width='300px'><?php echo $Nome[11]."<br>"; echo $ID[11]."<br>";?></td>

<td><?php echo $Nome[37]."<br>"; echo $ID[37]; ?></td>
</tr>
<tr>
<td><?php echo $Nome[38]."<br>"; echo $ID[38]; ?></td>
</tr>
<tr>
<td><?php echo $Nome[39]."<br>"; echo $ID[39]; ?></td>
</tr>
</table>
<!-- Fim nivel 3 -->


































 

Nivel 4
Então.... aqui o bicho pegou
e o motivo é o seguinte... O Nivel 1 é 0/3 (fácil..) o nivel 2 é 0/9 (ja começa a ficar grande o código....) o nivel 3 é 0/27
o NIVEL 4 É 0/81.... Fica muito ruim ter que fazer da forma que venho fazendo... MUITO RUIM.
então eu pensei o seguinte.... fazer um FOR pra repetir o comandos....
AQUI VAI O PROBLEMA
<?php


for($p = 12; $p < 81; $p++){
$i=40;
$SQL = mysqli_query($connect,"SELECT * FROM usuario WHERE Indicado='$ID[$p]' ORDER BY ID ASC LIMIT 3 ");
while($show = mysqli_fetch_array($SQL)){
$Email[$i] = $show['Email'];
$Nome[$i] = $show['Nome'];
$ID[$i] = $show['Indicador'];
$Status[$i] = $show['Status']; $i++;
} }


$n=12;
$ii=40;

for ($m = 0; $m <= 27; $m++) {

$index= $n; $n++; $ii++;

echo "



<table>
<tr>
<td rowspan='3' width='300px'> $Nome[$index]<br> $ID[$index]<br></td>

<td> $Nome[$ii]<br> $ID[$ii]</td>
</tr>
<tr>
<td> $Nome[$ii]<br> $ID[$ii]</td>
</tr>
<tr>
<td> $Nome[$ii]<br> $ID[$ii]</td>
</tr>
</table>

";
}


echo var_dump($ii);
?>














 

só que não dar o resultado que eu quero....
Resultado....
nv4.png
eu queria que fisseze o loop lá no for.... e nas array algo assim
Array[$i+0]
Array[$i+1]
Array[$i+2]
só que não funciona .......

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você quer que a partir de um primeiro ID, se encontre os 3 primeiros que o indicaram, desses 3 os que os indicaram e assim sucessivamente?

É para mostrar tudo numa mesma tabela ou separar tabelas por níveis?

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.