OverMix 1 Denunciar post Postado Outubro 21, 2013 Prezados AmigosBoa NoiteAndo com um pequeno problema ao criar um While dentro de if else.Segue código abaixo para verificação dos amigos <?php /* #### CONEXÃO COM O BANCO DE DADOS MYSQL #### */ include "../config/database/database.php"; /* #### CONEXÃO COM O BANCO DE DADOS MYSQL #### */ $buscaFaturasPagas = mysql_query("SELECT COUNT(*) FROM faturas WHERE status_fatura = '3' ORDER BY id DESC LIMIT 10") or die (mysql_error()); //CASO OCORRA ALGUM ERRO NA CONSULTA PARA O SCRIPT E MOSTRA O MESMO NA TELA // PEGAMOS O RESULTADO DA CONSULTA QUE DEVE NOS RETORNAR UM INTEIRO (NÚMERO) $contagemFaturasPagas = mysql_fetch_array( $buscaFaturasPagas ) or die (mysql_error()); //CASO OCORRA ALGUM ERRO NA CONSULTA PARA O SCRIPT E MOSTRA O MESMO NA TELA // SE O RESULTADO DA PESQUISA ACIMA FOR IGUAL A ZERO (0) A MENSAGEM DO IF É APRESENTADA OU SE HOUVEREM REGISTROS A MENSAGEM DO ELSE QUE É APRESENTADA if($contagemFaturasPagas== 0){ echo "Não existem dados para exibição no momento!"; }else{ //AQUI GOSTARIA DE ADICIONAR UM WHILE ONDE SERIAM APRESENTADOS COM UMA TABELA echo"Existe(m) ".mysql_result($buscaFaturasPagas, 0)." registros até o momento"; } mysql_close($_conexao); ?> Até a construção da contagem de registros beleza o mesmo está funcionando como deveria mas dentro do ELSE gostaria de adicionar uma tabela com os dados vindos da consulta SQL, mas todos os meios que fiz aqui o fechamento do While que seria o } está fechando o else e me apresenta o erro que faltou fechar algo.Teria algum modo de resolver isso? Compartilhar este post Link para o post Compartilhar em outros sites
FreitasMT 29 Denunciar post Postado Outubro 21, 2013 se voce quer colocar um while dentro do else do if seria assim no seu codigo: <?php /* #### CONEXÃO COM O BANCO DE DADOS MYSQL #### */ include "../config/database/database.php"; /* #### CONEXÃO COM O BANCO DE DADOS MYSQL #### */ $buscaFaturasPagas = mysql_query("SELECT COUNT(*) FROM faturas WHERE status_fatura = '3' ORDER BY id DESC LIMIT 10") or die (mysql_error()); //CASO OCORRA ALGUM ERRO NA CONSULTA PARA O SCRIPT E MOSTRA O MESMO NA TELA // PEGAMOS O RESULTADO DA CONSULTA QUE DEVE NOS RETORNAR UM INTEIRO (NÚMERO) $contagemFaturasPagas = mysql_fetch_array( $buscaFaturasPagas ) or die (mysql_error()); //CASO OCORRA ALGUM ERRO NA CONSULTA PARA O SCRIPT E MOSTRA O MESMO NA TELA // SE O RESULTADO DA PESQUISA ACIMA FOR IGUAL A ZERO (0) A MENSAGEM DO IF É APRESENTADA OU SE HOUVEREM REGISTROS A MENSAGEM DO ELSE QUE É APRESENTADA if($contagemFaturasPagas== 0){ echo "Não existem dados para exibição no momento!"; }else{ //AQUI GOSTARIA DE ADICIONAR UM WHILE ONDE SERIAM APRESENTADOS COM UMA TABELA echo"Existe(m) ".mysql_result($buscaFaturasPagas, 0)." registros até o momento"; $i = 1; while($i<10){ echo "ola ".$i."<br>"; } } mysql_close($_conexao); ?> não existe segredo. ahh só esqueci o $i++ Compartilhar este post Link para o post Compartilhar em outros sites
OverMix 1 Denunciar post Postado Outubro 21, 2013 eu pensei em algo do gênero <?php /* #### CONEXÃO COM O BANCO DE DADOS MYSQL #### */ include "../config/database/database.php"; /* #### CONEXÃO COM O BANCO DE DADOS MYSQL #### */ $buscaFaturasPagas = mysql_query("SELECT COUNT(*) FROM faturas WHERE status_fatura = '3' ORDER BY id DESC LIMIT 10") or die (mysql_error()); //CASO OCORRA ALGUM ERRO NA CONSULTA PARA O SCRIPT E MOSTRA O MESMO NA TELA // PEGAMOS O RESULTADO DA CONSULTA QUE DEVE NOS RETORNAR UM INTEIRO (NÚMERO) $contagemFaturasPagas = mysql_fetch_array( $buscaFaturasPagas ) or die (mysql_error()); //CASO OCORRA ALGUM ERRO NA CONSULTA PARA O SCRIPT E MOSTRA O MESMO NA TELA // SE O RESULTADO DA PESQUISA ACIMA FOR IGUAL A ZERO (0) A MENSAGEM DO IF É APRESENTADA OU SE HOUVEREM REGISTROS A MENSAGEM DO ELSE QUE É APRESENTADA if($contagemFaturasPagas> 0){ echo"Existe(m) ".mysql_result($buscaFaturasPagas, 0)." registros até o momento"; echo "<br><br>"; $dadosFaturasPagas = mysql_query("SELECT * FROM faturas WHERE status_fatura = '3' ORDER BY id DESC LIMIT 10") while ($faturasPagasLinha = mysql_fetch_array($dadosFaturasPagas) or die()) //CASO OCORRA ALGUM ERRO NA CONSULTA PARA O SCRIPT E MOSTRA O MESMO NA TELA { $nome = $faturasPagasLinha["nome_cliente"]; $valor = $faturasPagasLinha["valor_fatura"]; <div align='center'> <table border='0' cellspacing='1' width='600' id='table1'> <tr><td>Nome</td><td>Valor</td></tr> <tr><td>$nome</td><td>$valor</td></tr> <?php } ?> </table> </div> }else{ echo "Não existem dados para exibição no momento!"; } mysql_close($_conexao); ?> mas isso retorna o erroParse error: syntax error, unexpected T_WHILE Compartilhar este post Link para o post Compartilhar em outros sites
FreitasMT 29 Denunciar post Postado Outubro 21, 2013 Realmente while com html é algo confuso... segue o codigo corrigido <?php /* #### CONEXÃO COM O BANCO DE DADOS MYSQL #### */ include "../config/database/database.php"; /* #### CONEXÃO COM O BANCO DE DADOS MYSQL #### */ $buscaFaturasPagas = mysql_query("SELECT COUNT(*) FROM faturas WHERE status_fatura = '3' ORDER BY id DESC LIMIT 10") or die (mysql_error()); //CASO OCORRA ALGUM ERRO NA CONSULTA PARA O SCRIPT E MOSTRA O MESMO NA TELA // PEGAMOS O RESULTADO DA CONSULTA QUE DEVE NOS RETORNAR UM INTEIRO (NÚMERO) $contagemFaturasPagas = mysql_fetch_array( $buscaFaturasPagas ) or die (mysql_error()); //CASO OCORRA ALGUM ERRO NA CONSULTA PARA O SCRIPT E MOSTRA O MESMO NA TELA // SE O RESULTADO DA PESQUISA ACIMA FOR IGUAL A ZERO (0) A MENSAGEM DO IF É APRESENTADA OU SE HOUVEREM REGISTROS A MENSAGEM DO ELSE QUE É APRESENTADA if($contagemFaturasPagas> 0){ echo"Existe(m) ".mysql_result($buscaFaturasPagas, 0)." registros até o momento"; echo "<br><br>"; $dadosFaturasPagas = mysql_query("SELECT * FROM faturas WHERE status_fatura = '3' ORDER BY id DESC LIMIT 10") ?> <div align='center'> <table border='0' cellspacing='1' width='600' id='table1'> <?php while ($faturasPagasLinha = mysql_fetch_array($dadosFaturasPagas) or die()) //CASO OCORRA ALGUM ERRO NA CONSULTA PARA O SCRIPT E MOSTRA O MESMO NA TELA { $nome = $faturasPagasLinha["nome_cliente"]; $valor = $faturasPagasLinha["valor_fatura"]; // tem que fechar o php aqui ?> <tr><td>Nome</td><td>Valor</td></tr> <tr><td>$nome</td><td>$valor</td></tr> <?php } ?> </table> </div> <?php }else{ echo "Não existem dados para exibição no momento!"; } mysql_close($_conexao); ?> Primeiro, voce se confundiu na abertura e fechamento das tags php segundo a div e a table pelo que eu entendi tem que ficar fora do while senão vao se repitir junto e não é isso que queremos. da uma testada Compartilhar este post Link para o post Compartilhar em outros sites
OverMix 1 Denunciar post Postado Outubro 21, 2013 Grande FreitasMT Valeu a força agora aparece normalmente as tabelas conforme tava querendo <?php /* #### CONEXÃO COM O BANCO DE DADOS MYSQL #### */ include "../config/database/database.php"; /* #### CONEXÃO COM O BANCO DE DADOS MYSQL #### */ $buscaFaturasPagas = mysql_query("SELECT COUNT(*) FROM faturas WHERE status_fatura = '3' ORDER BY id DESC LIMIT 10") or die (mysql_error()); //CASO OCORRA ALGUM ERRO NA CONSULTA PARA O SCRIPT E MOSTRA O MESMO NA TELA // PEGAMOS O RESULTADO DA CONSULTA QUE DEVE NOS RETORNAR UM INTEIRO (NÚMERO) $contagemFaturasPagas = mysql_fetch_array( $buscaFaturasPagas ) or die (mysql_error()); //CASO OCORRA ALGUM ERRO NA CONSULTA PARA O SCRIPT E MOSTRA O MESMO NA TELA // SE O RESULTADO DA PESQUISA ACIMA FOR IGUAL A ZERO (0) A MENSAGEM DO IF É APRESENTADA OU SE HOUVEREM REGISTROS A MENSAGEM DO ELSE QUE É APRESENTADA if($contagemFaturasPagas> 0){ echo"Existe(m) ".mysql_result($buscaFaturasPagas, 0)." registros até o momento"; echo "<br><br>"; $dadosFaturasPagas = mysql_query("SELECT * FROM faturas WHERE status_fatura = '3' ORDER BY id DESC LIMIT 10") ?> <div align='center'> <table border='0' cellspacing='1' width='600' id='table1'> <?php while ($faturasPagasLinha = mysql_fetch_array($dadosFaturasPagas) or die()) //CASO OCORRA ALGUM ERRO NA CONSULTA PARA O SCRIPT E MOSTRA O MESMO NA TELA { $nome = $faturasPagasLinha["nome_cliente"]; $valor = $faturasPagasLinha["valor_fatura"]; // tem que fechar o php aqui ?> <tr><td>Nome</td><td>Valor</td></tr> <tr><td><?php echo"$nome"?></td><td><?php echo"$valor";?></td></tr> <?php } ?> </table> </div> <?php }else{ echo "Não existem dados para exibição no momento!"; } mysql_close($_conexao); ?> Só um detalhe que me deixou cabreiro é que ele não está respeitando o else o script me retorna issoExiste(m) 0 registros até o momento e não mostra a tabela ao invés disso echo "Não existem dados para exibição no momento!"; Compartilhar este post Link para o post Compartilhar em outros sites
paulinhosupriano 103 Denunciar post Postado Outubro 21, 2013 olá meu amigo Grande FreitasMT Valeu a força agora aparece normalmente as tabelas conforme tava querendo <?php /* #### CONEXÃO COM O BANCO DE DADOS MYSQL #### */ include "../config/database/database.php"; /* #### CONEXÃO COM O BANCO DE DADOS MYSQL #### */ $buscaFaturasPagas = mysql_query("SELECT COUNT(*) FROM faturas WHERE status_fatura = '3' ORDER BY id DESC LIMIT 10") or die (mysql_error()); //CASO OCORRA ALGUM ERRO NA CONSULTA PARA O SCRIPT E MOSTRA O MESMO NA TELA // PEGAMOS O RESULTADO DA CONSULTA QUE DEVE NOS RETORNAR UM INTEIRO (NÚMERO) $contagemFaturasPagas = mysql_fetch_array( $buscaFaturasPagas ) or die (mysql_error()); //CASO OCORRA ALGUM ERRO NA CONSULTA PARA O SCRIPT E MOSTRA O MESMO NA TELA // SE O RESULTADO DA PESQUISA ACIMA FOR IGUAL A ZERO (0) A MENSAGEM DO IF É APRESENTADA OU SE HOUVEREM REGISTROS A MENSAGEM DO ELSE QUE É APRESENTADA if($contagemFaturasPagas> 0){ echo"Existe(m) ".mysql_result($buscaFaturasPagas, 0)." registros até o momento"; echo "<br><br>"; $dadosFaturasPagas = mysql_query("SELECT * FROM faturas WHERE status_fatura = '3' ORDER BY id DESC LIMIT 10") ?> <div align='center'> <table border='0' cellspacing='1' width='600' id='table1'> <?php while ($faturasPagasLinha = mysql_fetch_array($dadosFaturasPagas) or die()) //CASO OCORRA ALGUM ERRO NA CONSULTA PARA O SCRIPT E MOSTRA O MESMO NA TELA { $nome = $faturasPagasLinha["nome_cliente"]; $valor = $faturasPagasLinha["valor_fatura"]; // tem que fechar o php aqui ?> <tr><td>Nome</td><td>Valor</td></tr> <tr><td><?php echo"$nome"?></td><td><?php echo"$valor";?></td></tr> <?php } ?> </table> </div> <?php }else{ echo "Não existem dados para exibição no momento!"; } mysql_close($_conexao); ?> Só um detalhe que me deixou cabreiro é que ele não está respeitando o else o script me retorna issoExiste(m) 0 registros até o momento e não mostra a tabela ao invés disso echo "Não existem dados para exibição no momento!"; Olá meu amigo... neste seu if coloque.. if(mysql_num_rows($buscaFaturasPagas) > 0) { seu script aqui.. } else{ seu script aqui.. } Este post solucionou a sua dúvida, peço que coloque como resolvido e me der um ponto positivo de reputação para que eu possa continuar ajudando outros colegas como você. Caso não solucione o seu problema, peço que coloque a sua dúvida abaixo. Att: João Paulo Sousa Supriano Compartilhar este post Link para o post Compartilhar em outros sites
OverMix 1 Denunciar post Postado Outubro 21, 2013 é o caso tá feio aqui, tentei mudar o if pra if(mysql_num_rows($buscaFaturasPagas) > 0) { ou if(mysql_num_rows($buscaFaturasPagas) == 0) { ainda ocorre o mesmo, bem estranho isso. Ainda não tinha visto esse problema com selects e condições. Vai entender. Compartilhar este post Link para o post Compartilhar em outros sites
paulinhosupriano 103 Denunciar post Postado Outubro 21, 2013 Olá meu amigo.. Seu codigo reformulado... teste e verifique se tem retorno. Tirei algumas coisas desnecessária. <?php include "../config/database/database.php"; $buscaFaturasPagas = mysql_query("SELECT * FROM faturas WHERE status_fatura = '3' ORDER BY id DESC LIMIT 10") or die (mysql_error()); $total = mysql_num_rows($buscaFaturasPagas); if($total > 0){ echo"Existe(m) ".$total." registros até o momento"; echo "<br><br>"; echo " <div align='center'>";] echo "<table border='0' cellspacing='1' width='600' id='table1'>"; while ($res = mysql_fetch_array($buscaFaturasPagas) ) { $nome = $faturasPagasLinha["nome_cliente"]; $valor = $faturasPagasLinha["valor_fatura"]; printf('<tr><td>Nome</td><td>Valor</td></tr>'); printf('<tr><td>%s</td><td>%s</td></tr>',$res['nome_cliente'], $res['valor_fatura'] ); }// fim do laço echo "</table></div>"; }else{ echo "Não existem dados para exibição no momento!"; } mysql_close($_conexao); ?> Este post solucionou a sua dúvida, peço que coloque como resolvido e me der um ponto positivo de reputação para que eu possa continuar ajudando outros colegas como você. Caso não solucione o seu problema, peço que coloque a sua dúvida abaixo. Att: João Paulo Sousa Supriano Compartilhar este post Link para o post Compartilhar em outros sites
OverMix 1 Denunciar post Postado Outubro 21, 2013 Oh glória agora sim o maldito tá respeitando a condição do ELSE maravilha amigo paulinhosupriano <?php include "../config/database/database.php"; $buscaFaturasPagas = mysql_query("SELECT * FROM faturas WHERE status_fatura = '3' ORDER BY id DESC LIMIT 10") or die (mysql_error()); $total = mysql_num_rows($buscaFaturasPagas); if($total > 0){ echo"Existe(m) ".$total." registros até o momento"; echo "<br><br>"; echo " <div align='center'>"; echo "<table border='0' cellspacing='1' width='600' id='table1'>"; while ($faturasPagasLinha = mysql_fetch_array($buscaFaturasPagas) ) { $nome = $faturasPagasLinha["nome_cliente"]; $valor = $faturasPagasLinha["valor_fatura"]; printf('<tr><td>Nome</td><td>Valor</td></tr>'); printf('<tr><td>'.$nome.'</td><td>'.$valor.'</td></tr>'); }// fim do laço echo "</table></div>"; }else{ echo "Não existem dados para exibição no momento!"; } mysql_close($_conexao); ?> Compartilhar este post Link para o post Compartilhar em outros sites
Alss 0 Denunciar post Postado Março 27, 2017 Em 21/10/2013 at 03:00, OverMix disse: Oh glória agora sim o maldito tá respeitando a condição do ELSE maravilha amigo paulinhosupriano <?php include "../config/database/database.php"; $buscaFaturasPagas = mysql_query("SELECT * FROM faturas WHERE status_fatura = '3' ORDER BY id DESC LIMIT 10") or die (mysql_error()); $total = mysql_num_rows($buscaFaturasPagas); if($total > 0){ echo"Existe(m) ".$total." registros até o momento"; echo "<br><br>"; echo " <div align='center'>"; echo "<table border='0' cellspacing='1' width='600' id='table1'>"; while ($faturasPagasLinha = mysql_fetch_array($buscaFaturasPagas) ) { $nome = $faturasPagasLinha["nome_cliente"]; $valor = $faturasPagasLinha["valor_fatura"]; printf('<tr><td>Nome</td><td>Valor</td></tr>'); printf('<tr><td>'.$nome.'</td><td>'.$valor.'</td></tr>'); }// fim do laço echo "</table></div>"; }else{ echo "Não existem dados para exibição no momento!"; } mysql_close($_conexao); ?> Mano muito obrigado mesmo, sério, tipo, DEMAIS! Você salvou minha vida cara! Não sei o que seria de mim sem esses fóruns... Sério mano, de verdade, obrigado! Criei uma conta aqui só pra agradecer porque olha, vi muitos tutoriais na internet e tentei todos, mas nenhum funcionou, o seu que me salvou mesmo. Valeu \o Compartilhar este post Link para o post Compartilhar em outros sites