Jump to content
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

Sign in to follow this  
Sir Pereira

[RESOLVIDO] Função de procura

Recommended Posts

Sir Pereira

Boas pessoal,

estou a desenvolver um sistema de procura, o problema é que o sistema não me está a encontrar as coisas mesmo com elas lá.

JÁ FOI RESOLVIDA ESTA PARTE


<?php

$pesquisa_titulo = $_GET['pesquisa_titulo'];

$par = 0;

$sql = mysql_query("SELECT * FROM tv_noticias WHERE title LIKE  '%" . $pesquisa_titulo ."%'");

if (mysql_num_rows($sql) > 0) {

		echo '<div class="table">';
		echo '	<img src="img/bg-th-left.gif" width="8" height="7" alt="" class="left" />';
		echo '	<img src="img/bg-th-right.gif" width="7" height="7" alt="" class="right" />';
		echo '	<table class="listing" cellpadding="0" cellspacing="0">';
		echo '		<tr>';
		echo '			<th class="first" width="177">Título</th>';
		echo '			<th>URL</th>';
		echo '			<th>Miniatura</th>';
		echo '			<th>Data</th>';
		echo '			<th>Descrição</th>';
		echo '			<!--<th>Head</th>';
		echo '			<th>Header</th>-->';
		echo '			<th class="last">Funções</th>';
		echo '		</tr>';


	for ($pass = 0; $pass < mysql_num_rows($sql); $pass++){

		$par++;
		if ($par % 2 == 0) {
		echo '<tr>';
				$query = mysql_query("SELECT title FROM tv_noticias WHERE ID = ".mysql_result($sql, $pass)." LIMIT 1");	
			echo '<td class="first style1">'.mysql_result($query, 0).'</td>';
				$query = mysql_query("SELECT url FROM tv_noticias WHERE ID = ".mysql_result($sql, $pass)." LIMIT 1");	
			echo '<td>'.mysql_result($query, 0).'</td>';
				$query = mysql_query("SELECT thumbnail FROM tv_noticias WHERE ID = ".mysql_result($sql, $pass)." LIMIT 1");	
			echo '<td><a href="'.mysql_result($query, 0).'" target="_blank" rel="lightbox"><strong>Ver</strong></a></td>';
				$query = mysql_query("SELECT date FROM tv_noticias WHERE ID = ".mysql_result($sql, $pass)." LIMIT 1");	
			echo '<td>'.mysql_result($query, 0).'</td>';
				$query = mysql_query("SELECT description FROM tv_noticias WHERE ID = ".mysql_result($sql, $pass)." LIMIT 1");	
			echo '<td>'.mysql_result($query, 0).'</td>';
				$query = mysql_query("SELECT ID FROM tv_noticias WHERE ID = ".mysql_result($sql, $pass)." LIMIT 1");	
				$id_actual = mysql_result($query, 0);
			echo '<td class="last"><a href="alt_noticia.php?id='.$id_actual.'"><img src="img/edit-icon.gif"></a> <a href="del_noticia.php?id='.$id_actual.'"><img src="img/del-icon.gif"></a></td>';
			echo '</tr>';

			} else {

			echo '<tr class="bg">';
				$query = mysql_query("SELECT title FROM tv_noticias WHERE ID = ".mysql_result($sql, $pass)." LIMIT 1");	
			echo '<td class="first style1">'.mysql_result($query, 0).'</td>';
				$query = mysql_query("SELECT url FROM tv_noticias WHERE ID = ".mysql_result($sql, $pass)." LIMIT 1");	
			echo '<td>'.mysql_result($query, 0).'</td>';
				$query = mysql_query("SELECT thumbnail FROM tv_noticias WHERE ID = ".mysql_result($sql, $pass)." LIMIT 1");	
			echo '<td><a href="'.mysql_result($query, 0).'" target="_blank" rel="lightbox"><strong>Ver</strong></a></td>';
				$query = mysql_query("SELECT date FROM tv_noticias WHERE ID = ".mysql_result($sql, $pass)." LIMIT 1");	
			echo '<td>'.mysql_result($query, 0).'</td>';
				$query = mysql_query("SELECT description FROM tv_noticias WHERE ID = ".mysql_result($sql, $pass)." LIMIT 1");	
			echo '<td>'.mysql_result($query, 0).'</td>';
				$query = mysql_query("SELECT ID FROM tv_noticias WHERE ID = ".mysql_result($sql, $pass)." LIMIT 1");	
				$id_actual = mysql_result($query, 0);
			echo '<td class="last"><a href="alt_noticia.php?id='.$id_actual.'"><img src="img/edit-icon.gif"></a></a> <a href="del_noticia.php?id='.$id_actual.'"><img src="img/del-icon.gif"></a></td>';
			echo '</tr>';
			echo '</table>';
			echo '<div class="select">';
			echo '<strong>Páginas: </strong>';
			echo '<select>';
			echo '<option>1</option>';
			echo '</select>';
		    echo '</div>';

			}
					}

} else {			
	echo "A procura por <b>".$pesquisa_titulo."</b> não retornou resultados.";
	echo "<br /><br />";
	echo "<a href='home.php'>Clique aqui para voltar à listagem de notícias</a>.";
}

?>

Faço uma pesquisa (pelo título) de "Agenda", porque sei que existe lá um valor que têm na coluna title 'Agenda', no entanto, ele não me encontra nada...

Será do SQL?

Btw, já agora não daria para procurar em todos os campos?

Já agora, com este mesmo código, não estou mesmo a perceber o porquê, se procurar uma string comum, como por exemplo "a", os dados vão-me aparecer totalmente fora da tabela:

whkt4w.jpg

Sugestões?

Cumps

Share this post


Link to post
Share on other sites
scorch

Tu fechas a tabela dentro do for. Não será disso?


scorch_pp.png

PS: Não respondo a perguntas por mensagem que podem ser respondidas no fórum.

Share this post


Link to post
Share on other sites
scorch

Que estavas a fazer no meu site? :D

LOL. Nem tinha reparado. :cheesygrin::D


scorch_pp.png

PS: Não respondo a perguntas por mensagem que podem ser respondidas no fórum.

Share this post


Link to post
Share on other sites
scorch

Vais adicionando manualmente.

$sql = mysql_query("SELECT * FROM tv_noticias WHERE title LIKE  '%" . $pesquisa_titulo ."%' or tv_descricao LIKE  '%" . $pesquisa_titulo ."%'");


scorch_pp.png

PS: Não respondo a perguntas por mensagem que podem ser respondidas no fórum.

Share this post


Link to post
Share on other sites
Nazgulled

Nazgulled aichh, o homem observa tudo ahah ;) andava a observar !

Lol, só reparei que tinhas as tabs coloridas e olhei de uma ponta a outra e vi o meu logo.

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
Sign in to follow this  

×

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.