Jump to content


Photo

Fazer Consulta Ao Bd Se Estiver Vazio


  • Faça o login para participar
9 replies to this topic

#1 umbu

umbu

    Normal

  • Usuários
  • 85 posts
  • Sexo:Não informado

Posted 15/01/2006, 21:13

Pessoal como posso fazer uma consulta no BD e caso ele esteja vazio mostrar uma msg, caso tenha um registro, mostrar este registro?

Estou usando este codigo:

<?
$host_db1 = "localhost";//nome do host
$user_db1 = "_admin";//nome de usuario do mysql
$pass_db1 = ""; //senha do mysql
$bd_db1 = "_favoritos"; //nome do banco de dados
$tabela_favoritos = "favoritos"; //nome da tabela do danco de dados

$db_db1  	=	mysql_connect ($host_db1,$user_db1,$pass_db1);
$basedados_db1	=	mysql_select_db($bd_db1);

$sql = mysql_query("SELECT * FROM $tabela_favoritos WHERE dominio='<cpanel print="DOMAIN">' ORDER BY ordem DESC LIMIT 5");
while ($row = mysql_fetch_array($sql))  {

$titulo1 = $row['titulo1'];
$titulo2 = $row['titulo2'];
$titulo3 = $row['titulo3'];
$titulo4 = $row['titulo4'];
$titulo5 = $row['titulo5'];
$link1 = $row['link1'];
$link2 = $row['link2'];
$link3 = $row['link3'];
$link4 = $row['link4'];
$link5 = $row['link5'];

if($sql == '') {
echo"Não ha links favoritos cadastrados.<br><a href=favoritos.php>Clique aqui para cadastrar!</a>";
} else {
echo "<a href=$link1>$titulo1</a><br><a href=$link2>$titulo2</a><br><a href=$link3>$titulo3</a><br><a href=$link4>$titulo4</a><br><a href=$link5>$titulo5</a><br>";
}
}
?>

Eu acho q a mágica é no if($sql == '') { eu tentei de varias formas mais não consegui, olhei no manual do php e pesquizei no forum, mais é muito dificil achar algo com este termo.

Obrigado pela ajuda!

Edição feita por: umbu, 15/01/2006, 21:14.

Eu apoio a Ong Desapareceu!
Apoie você também.
http://forum.wmonlin...howtopic=130640

#2 marcosousa

marcosousa

    Novato no fórum

  • Usuários
  • 4 posts
  • Sexo:Não informado

Posted 15/01/2006, 21:45

Tem q usar é o if mesmo do jeito q vc colocou, mas usando

if($sql == '') {

eu posso estar enganado, mas acho que vc tá verificando é se o $sql tá vazio, enquanto eu acho q se deveria usar é

$tabela_favoritos

que é a tabela em que os dados estão gravados.

#3 Paulo Freitas

Paulo Freitas

    ××××××× LRU #456504 ××××××× ××××××× LRM #364686 ×××××××

  • Ex-Admins
  • 5612 posts
  • Sexo:Masculino
  • Localidade:Campinas - SP

Posted 15/01/2006, 22:18

Altere isto:
if($sql == '') {
Para isto:
if ($sql) {
Ou isto:
if (mysql_num_rows($sql) > 0) {
[]’s :DAté mais

#4 ScraX

ScraX

    12 Horas

  • Usuários
  • 243 posts
  • Sexo:Masculino
  • Localidade:Varginha, Minas Gerais
  • Interesses:Fazer site, progamar ... apreder coisas novas nesse ramo...

Posted 16/01/2006, 06:03

No meus sistemas eu faço assim:

<?php
if(mysql_num_rows($sql)==0){
    echo "Não há dados cadastrados em nossos sistema.";
}
else{
    //codigo para exibir os dados
}
?>

E funciona. Flw


marcosousa: Pelo q sei ele ta vendo o $sql que é a variavel q esta fazendo a conexão na tabela, logo ele esta verificando os dados da tabela. Tipo, se os dados da pesquisar voltarem 0 é pq a tabela nao tem nd...

Edição feita por: ScraX, 16/01/2006, 06:06.

ScraX.dEsiGNeR

Fireworks - Dreamweaver - Flash - PHP - JavaScript - AJAX
HTML - XML - CSS - Tableless

#5 gennf

gennf

    A Solução está ai...

  • Usuários
  • 645 posts
  • Sexo:Masculino
  • Localidade:Belo Horizonte - MG

Posted 16/01/2006, 07:48

Bom xo da minha opiniãozinha... :P

Se eu intendi bem vc quer que o campo da tabela que estiver vazio retorne um aviso dizendo que determinado campo esta vazio, então utilize:


if($campo == ""){
echo"campo da tabela esta vazio";
}else{
// Código para exibir os dados dados 
}

Não sei se é recomendável usar um monte de ifs no código mas eu uso assim e da certinho.

Se é recomendável ou não eu deixo pros nossos amigos ai mais veteraneos em PHP pra responder.

Abraços ;)
Portal BatePapoBrasil
URL: www.batepapobrasil.com

----------------------------
Site desenvolvidos
URL:
VitrineABC :: Alugue Litoral :: OrtodontiaLago

#6 umbu

umbu

    Normal

  • Usuários
  • 85 posts
  • Sexo:Não informado

Posted 16/01/2006, 08:29

Nenhum desses funcionou.
Tipo este código tem a funçao de buscas os links no BD de um determinado dominio somente.
A pessoa loga no sistema e o dominio fica num cookie entao ele pega o dominio no cookie e exibe somente os links deste dominio.
Eu apoio a Ong Desapareceu!
Apoie você também.
http://forum.wmonlin...howtopic=130640

#7 Andreia Regina

Andreia Regina

    Veterano

  • Conselheiros
  • 1347 posts
  • Sexo:Feminino
  • Localidade:PR
  • Interesses:PHP; MySQL; Javascript; CSS; tudo ligado ao desenvolvimento web.

Posted 16/01/2006, 09:35

Oi!

Posta o código com a alteração para a gente ver como está e ver o pq de não estar funcionando.

Fórum WMO - Conselheira - Na equipe desde 31/01/2006.
Links importantes: Regras de conduta - Busca do fórum


#8 umbu

umbu

    Normal

  • Usuários
  • 85 posts
  • Sexo:Não informado

Posted 16/01/2006, 12:28

Ola.
Usei o do vidaloka neste codigo ai:

<?
$host_db1 = "localhost";//nome do host
$user_db1 = "_admin";//nome de usuario do mysql
$pass_db1 = ""; //senha do mysql
$bd_db1 = "_favoritos"; //nome do banco de dados
$tabela_favoritos = "favoritos"; //nome da tabela do danco de dados

$db_db1   = mysql_connect ($host_db1,$user_db1,$pass_db1);
$basedados_db1 = mysql_select_db($bd_db1);

$sql = mysql_query("SELECT * FROM $tabela_favoritos WHERE dominio='<cpanel print="DOMAIN">' ORDER BY ordem DESC LIMIT 5");
while ($row = mysql_fetch_array($sql))  {

$titulo1 = $row['titulo1'];
$titulo2 = $row['titulo2'];
$titulo3 = $row['titulo3'];
$titulo4 = $row['titulo4'];
$titulo5 = $row['titulo5'];
$link1 = $row['link1'];
$link2 = $row['link2'];
$link3 = $row['link3'];
$link4 = $row['link4'];
$link5 = $row['link5'];

if (mysql_num_rows($sql) > 0) {
echo"Não ha links favoritos cadastrados.<br><a href=favoritos.php>Clique aqui para cadastrar!</a>";
} else {
echo "<a href=$link1>$titulo1</a><br><a href=$link2>$titulo2</a><br><a href=$link3>$titulo3</a><br><a href=$link4>$titulo4</a><br><a href=$link5>$titulo5</a><br>";
}
}
?>

Tipo no BD tera varios cadastro, separados por dominios entao nao sera exibido todos os dominios de uma vez, e sim so os registros correspondentes ao dominio do cookie/...

Vlw pela ajuda.
Eu apoio a Ong Desapareceu!
Apoie você também.
http://forum.wmonlin...howtopic=130640

#9 Paulo Freitas

Paulo Freitas

    ××××××× LRU #456504 ××××××× ××××××× LRM #364686 ×××××××

  • Ex-Admins
  • 5612 posts
  • Sexo:Masculino
  • Localidade:Campinas - SP

Posted 16/01/2006, 12:33

Hmm ... algo me diz que este while() não deveria existir então ... :unsure:

Tenta alterar isto:
while ($row = mysql_fetch_array($sql))  {

...

}
Para isto:
$row = mysql_fetch_array($sql);
Se é que eu entendi direito, assim funcionará como deseja ... :rolleyes:

[]’s :DAté mais

#10 Tugu

Tugu

    <! Fernando Tugu !>

  • Usuários
  • 381 posts
  • Sexo:Masculino
  • Localidade:São Bernardo do Campo - SP
  • Interesses:Ajudar pessoas que tenham dificuldades em minhas especializações... e espero que me ajudem quando ficar muito xxxxxx meus trampos...

Posted 16/01/2006, 12:51

o mais pratico de todos.....


$sql= mysql_query("Select blabaalaa");
if($sql){
    retornou resultados e fa o que quer;
}
else{
  o que vc quer fazer se não retonou resultados....
}


<span style='font-size:10pt;line-height:100%'>Fernando Tugu</span>
Meu Lema: "O ser Humano não é nada sem seus sonhos . . . então vá pra cama dormir ! ! !"




0 user(s) are reading this topic

0 membro(s), 0 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq