Jump to content
fydellys

Busca em php

Recommended Posts

Olá companheiros, estou fazendo um simples sistema de busca que traga somente os resultados de tabelas especificas. O problema é que está ocasionando um erro devido as tabelas serem diferentes e suas linhas. Vejam meu script.

 

$q = $_GET['busca'];

$query='
    SELECT * FROM noticia WHERE noticia_title LIKE "%'.$q.'% or noticia_content LIKE "%'.$q.'%"
	UNION
    SELECT * FROM eventos WHERE evento_nome LIKE "%'.$q.'% or evento_content LIKE "%'.$q.'%"
    UNION 
   	SELECT * FROM albuns WHERE album_name LIKE "%'.$q.'%" or album_descricao LIKE "%'.$q.'%"  
    ';
	
	$result = mysql_query($query);
    $row_row = mysql_fetch_assoc($result);
	$row_count=mysql_num_rows($row_row);

	while ($row = mysql_fetch_array($query))
	{
		
	if ($row_count != 0)
	{
		echo "Durante sua busca foi encontrando $row_count resultados. ";
	}
	else
	{
		echo "Nada foi encontrado.";
	}
	  } 

 

O erro que está ocasionando é: 

Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource 

 

Alguém poderia me ajudar?

Share this post


Link to post
Share on other sites

Olá, tenta desta forma.

 


      //Faz a conexão com o Banco de Dados
      $conecta = mysql_connect("localhost", "root", "");
      mysql_select_db("nomeBancoDados", $conecta);

      //SQL PARA RECUPERAR OS RESULTADOS, SE TIVER A PROPRIEDADE WHERE USE A MESMA TAMBÉM
      $sql_res = mysql_query("SELECT * FROM imoveis WHERE noticiaStatus = 'pendente'
                                       AND membroId LIKE '%$membroId%'
                                       ORDER BY noticiaTermino ASC");
      $total = mysql_num_rows($sql_res);

 

Se ajudou, poste um OK.

 

Renato

Share this post


Link to post
Share on other sites
13 minutos atrás, Remazela disse:

Olá, tenta desta forma.

 



      //Faz a conexão com o Banco de Dados
      $conecta = mysql_connect("localhost", "root", "");
      mysql_select_db("nomeBancoDados", $conecta);

      //SQL PARA RECUPERAR OS RESULTADOS, SE TIVER A PROPRIEDADE WHERE USE A MESMA TAMBÉM
      $sql_res = mysql_query("SELECT * FROM imoveis WHERE noticiaStatus = 'pendente'
                                       AND membroId LIKE '%$membroId%'
                                       ORDER BY noticiaTermino ASC");
      $total = mysql_num_rows($sql_res);

 

Se ajudou, poste um OK.

 

Renato

 

Companheiro, 

Isso não funciona para mim! Você viu meu script?

Share this post


Link to post
Share on other sites

Não funcionou. A principio esse erro que está ocasionando tem haver com o SELECT e os UNION das tabelas. Por isso está ocasionando este erro. Não sei como resolver.

Share this post


Link to post
Share on other sites

@fydellys joia!

Você postou um erro de PHP, mas como você mesmo observou, é bem provável que o problema esteja na query.
Antes de tudo, tente executar essa query diretamente no banco de dados, só então, passe para o PHP.

O UNION exige que ambas as tabelas tenha a mesma quantidade de colunas, provavelmente é esse o problema, mas também suspeito que mesmo que tenham ou venha a ter a mesma quantidade de colunas, não é exatamente essa consulta que você quer. Em resumo, primeiro teste e modifique conforme necessário sua consulta, diretamente na base

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By ROGERIO MOREIRA
      Olá,
       
      preciso gerar listagem do meu banco de dados mas preciso definir um certo item como cabeça na pesquisa:
       
      ex:
      quero listar meus registros em orderm de:
       
      primeiro ESTADO    (ordem alfabetica)
      depois    CIDADE     (ordem alfabetica)
      depois    BAIRRO,    porém, quero colocar CENTRO em primeiro, depois os outros bairros
       
    • By Sapinn
      Estou usando o editor SummerNote em um projeto mas ele não está enviando os dados com o HTML apenas o texto. Eu estou colocando assim:

               
                                        <textarea id="summernote" class="textarea" required name="content">     <script> $('#summernote').summernote({         tabsize: 2,         height: 500,         toolbar: [           ['style', ['style']],           ['font', ['bold', 'underline', 'clear']],           ['color', ['color']],           ['para', ['ul', 'ol', 'paragraph']],           ['table', ['table']],           ['insert', ['link', 'picture', 'video']],           ['view', ['fullscreen', 'codeview', 'help']]         ]       });           </script>  
       
    • By marcelo.ourico
      Boa noite. Pessoal, mais uma vez aqui pedindo uma ajuda.

      Estou tentando enviar uma NFSe via SOAP.

      Estou recebendo o seguinte erro:

      Fatal error: Uncaught SoapFault exception: [SOAP-ENV:Client] ERRO : cvc-complex-type.4: Attribute 'Algorithm' must appear on element 'ns2:CanonicalizationMethod'. in

      O meu Array está da seguinte forma:
      Array
      (
      [CanonicalizationMethod] => Array
      (
      [@attributes] => Array
      (
      [Algorithm] => http://www.w3.org/TR/2001/REC-xml-c14n-20010315
      )
      )

      Não entendi o porque desse erro, alguém sabe ajudar?
    • By Sapinn
      Galera estou usando o PHPStorm para alguns projetos e estou com meus arquivos marcados em vermelho não sei oq é alguem pode me ajuda?
       
       

    • By danielambrosio
      Estou trabalhando numa programação PHP é conectado na tabela (cl_configs) para reconhece coluna name que reconhece esses 5 campos.
      e também que adiciona esses 5 valores é adicionado nessa outra tabela (cl_ads_block_ips) nesses 8 coluna (id, ip, clicks, last_click, dads_refresh_qtd, dads_refresh_data, dads_refresh_ldata, clicks_rotativo_dia).
      E a conexão que eu usa era de outro site e não estou tendo problema e configurar em outro site que reconhece essa banco de dados abaixo.
       
      <?php $host = "localhost"; $user = "ads"; $pass = "_CMpFF4Hpa!G_gTh"; $dbname = "ads"; $port = 3306; try {     $conn = new PDO('mysql:host=' . $host . ';port=' . $port . ';dbname=' . $dbname, $user, $pass);     //echo "Conexão com banco de dados realizado com sucesso!"; } catch (PDOException $err) {     echo "Erro: Conexão com banco de dados não foi realizada com sucesso. Erro gerado " . $err->getMessage(); } ?>  
      Conecta com sucesso só não está reconhecendo a tabela (cl_configs) e nem adicionando na tabela (cl_ads_block_ips).
       
       
      Agora não sei porque não esta reconhecendo (cl_configs) e nem adicionando (cl_ads_block_ips).
       
       


×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.