Ir para conteúdo
Fórum Script Brasil
  • 0

Falha Na Busca.


carlos.antunes

Pergunta

Boa tarde. Esse é meu primeiro post no fórum.

Muito interessante, por sinal... meus parabéns a todos que dedicam um pouco do seu tempo a ajudar quem está começando !!

Bom pessoal, eu estou usando o PHP em um arquivo de busca, estava funcionando bem até que precisei colocar a opção de "com foto" ou "indiferente"

Agora o resultado sempre é o mesmo: que não encontrou ninguém (mesmo que coloque informações que existem).

Essa parte do código:

...

$estado   =   $_POST[txtestado];

$idade  =   $_POST[txtidade];

$foto   =   $_POST[txtfoto];

$query = "Select foto1 from arquivo";

$resul = mysql_query($query) or die('error: ' . mysql_error());

$row = mysql_fetch_row($resul);

if($foto == comfoto)

$row != 'semfoto';

...

$sql = "select * from arquivo where estado LIKE '$estado' AND faixaidade LIKE '$idade' AND foto1 LIKE '$foto'";

$result = mysql_query ($sql);

....

O campo foto1 está default como "semfoto" e, se tiver alguma coisa cadastrada, tem o nome_da_foto.gif

Ainda não conheço muito de PHP, por isso, se alguém puder me ajudar, será muito bom.

Abraços,

Carlos

Link para o comentário
Compartilhar em outros sites

7 respostass a esta questão

Posts Recomendados

  • 0

Porque você não procura pelo id ou uma informação apenas não precisa buscar por todos os campos

$sql = "select * from arquivo where estado LIKE '$estado' AND faixaidade LIKE '$idade' AND foto1 LIKE '$foto'";

$result = mysql_query ($sql);

tenta assim:

$sql = "select * from arquivo where foto = '$foto'";

$result = mysql_query ($sql);

$contagem = mysql_num_rows($query);

if ($contagem == 0) {

echo "não tem foto";

}else{

echo "tem foto";

}

se tiver mais duvidas post ai, desculpa se não pude ajudar mais to muito oculpado

ate logo

Link para o comentário
Compartilhar em outros sites

  • 0

Olá, Fabyo.

Agradeço por sua ajuda.

Mas creio que esse código não resolverá meu problema. Talvez eu não tenha explicado direito...

A busca deve retornar alguma coisa somente se os dois primeiros campos forem satisfatórios (estado, idade).

Sendo que, no resultado, deve constar se os cadastrados encontrados têm foto ou não.

Se, na busca, a pessoa colocar a opção "com foto" deve mostrar só os cadastros em que o campo foto não seja "semfoto". E se a pessoa colocar a opção "indiferente" deve mostrar todos os cadastros, sem exceção.

Alguma idéia??

Obrigado.

Carlos.

Link para o comentário
Compartilhar em outros sites

  • 0

Cara... vo jogah direto com você...

$estado  =  $_POST[txtestado];

$idade  =  $_POST[txtidade];

$foto  =  $_POST[txtfoto];

$query = "Select foto1 from arquivo WHERE id = '$id'";

$resul = mysql_query($query) or die('error: ' . mysql_error());

while($linha=mysql_fetch_array($resul)) {

$foto  = $linha["foto1"];

}

if(!$foto = "semfoto") {

    echo "Esse cadastro tem foto");

} elseif (!$foto = "comfoto") {

    echo "Esse cadastro não tem foto");

}

V se isso te ajuda cara.. c não te ajudar, me dá um toque ae...

falou!!

Link para o comentário
Compartilhar em outros sites

  • 0

Como vai, Toretto PHP?

Primeiramente, muito obrigado por seu interesse.

Entendi sua lógica, mas estou com dúvida com relação às opções selecionadas na busca.

O problema é que se a pessoa selecionar a opção "com foto" tem que aparecer "só" os cadastros com foto, então, penso que tenha que incluir no select o filtro: foto LIKE '$foto' como coloquei no meu primeiro exemplo.

Ainda não consegui encaixar as duas opções:

"com foto" aparece só os cadastros que se encaixam na busca e que tem foto

"indiferente" aparece todos os cadastros que se encaixam na busca independente de ter foto ou não

e, nos dois casos, aparece descrito se cada cadastro tem foto ou não.

Nossa! perdoe-me se me enrolei na explicação...

Como resolver isso?

Abraços

Carlos

Link para o comentário
Compartilhar em outros sites

  • 0

Qé isso véi, nem eskenta, tamo aki pra isso mesmo...

Faz isso...

$estado  =  $_POST[txtestado];

$idade  =  $_POST[txtidade];

$foto  =  $_POST[txtfoto];

$query = "Select foto1 from arquivo WHERE id = '$id'";

$resul = mysql_query($query) or die('error: ' . mysql_error());

while($linha=mysql_fetch_array($resul)) {

$foto  = $linha["foto1"];

}

if(!$foto = "semfoto") {

    header("Location: comfoto.php");

} elseif (!$foto = "comfoto") {

    header("Location: semfoto.php");

}

comfoto.php

<?

// Faz a conexão com o db...

$busca = mysql_query("SELECT * FROM arquivo WHERE foto1 = 'comfoto'");

// Vai buscar todos os que tem foto

while($linha=mysql_fetch_array($busca)) {

$nome      = $linha["nome];

$end_img  = $linha["end_img"];  // inclui sempre o endereço da imagem...

... outros campos ...

} // Se fechar antes do echo, vai pegar 1 resultado apenas...

echo "

<br><img scr='$end_img'><br>$nome<br>

";

no arquivo semfoto.php, você não pega registro do campo end_img.

Com essa lógica você consegue algum resultado, fiz isso no site q to terminando aki e deu certo, mas o meu código não vai servir pra vc, apesar de td, o meu mostra o que tem disponível, o seu é busca... Mas a lógica é praticamente a mesma...

Faz isso...

1. Cria um campo para salvar os endereços das imagens

2. Tenta aplicar esse código...

falou ae

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,2k
×
×
  • Criar Novo...