Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá amigos poderia me explicar por que esse loop não esta dando certo pois ele so ira sair do loop caso o codigo gerado não exista cadastrado no banco de dados, obrigado desde já.
while($TemCodigo == 1){
$CodigoUrl = Random(8); // e uma função que gera.
// Verifica se o codigo existe cadastrado.
$sqlUrl = $mySQL->sql("SELECT codigo FROM url WHERE codigo = '$CodigoUrl'");
$qtUrl = mysql_num_rows($sqlUrl);
if($qtUrl == 0){
// Inicio de inserção de dados
$sqlCadastra = $mySQL->sql("INSERT INTO url (codigo, url) VALUES ('$CodigoUrl', '".$urlPrincipal."link/".$file_titulo.".html')");
$UrlFinal = $CodigoUrlTwi;
$TemCodigo = 1;
}else{
$TemCodigo = 0;
}
}
O codigo não esta nem entrando no loop não estou entendendo oque fiz de errado.
você iniciou a variável $TemCodigo antes?
ou talvez o mais indicado pra você seja um do..while ao invés do while.
Obrigado a todos utilizei do..while ao invés do while e iniciei a variavel.
>
O codigo não esta nem entrando no loop não estou entendendo oque fiz de errado.
Então o problema é simples, $TemCodigo é diferente de 1 !!!
Se você precisa que o loop seja executado, pelo meno 1 vez, utilize do {} while ( cond ) em vez de while (cond ) {}
do {
//...
} while ( $TemCodigo == 1 );