Publicada por heckjp em 18/07/2007 - 18:54h:
* heckjp usa elementary OS


Olá pessoal...Mandei anteriormente uma pergunta mas não fui respondido...estou com uma duvida em PHP simples...mas é aquela historia..talvez outra pessoa consiga visualizar melhor o meu erro... O meu código não está puxando meus selects... alguem me da 1 luz?? Abaixo o codigo:

<p align="center"><img src="../biblioteca/1.jpg" width="400" height="223"> </p>
<p>
<form action="" method="get">
<input name="link" type="hidden" value="procura">
<!--Mecanismo de busca em manutenção. -->
Digite o que você deseja buscar: <input name="procura" type="text" size="20" maxlength="128"><br>
Buscar por:
<select name="criterio">
<option>Autor,Título,Assunto</option>
<option>Autor</option>
<option>Título</option>
<option>Assunto</option>
</select>
&nbsp;&nbsp;<input type="submit" value="ok">
</p>
</form>
<hr />

<?php
if (isset($_GET['procura']) && $_GET['procura'] != "") {
require("../sistema/config.inc.php");
mysql_select_db("openbiblio");
$a=$_GET['criterio'];
$p=$_GET['procura'];
if ($a=="Autor"){
$q = mysql_query("SELECT DISTINCT(title), author FROM biblio WHERE author LIKE '%" .$p."%'");}
else if($a=="Título"){
$q = mysql_query("SELECT DISTINCT(title), author FROM biblio WHERE title LIKE '%" .$p."%'");}
else if ($a=="Assunto"){
$q = mysql_query("SELECT DISTINCT(title), author FROM biblio WHERE topic1 LIKE '%" .$p."%'");}
else if($a=="Autor,Título,Assunto"){
$q = mysql_query("SELECT DISTINCT(title), author FROM biblio WHERE topic1 LIKE '%" .$p."%' OR author LIKE '%".$p."%' OR title LIKE '%".$p."%'");}
$n = mysql_num_rows($q);
if ($n < 1){
die( mysql_error());
echo "Nada encontrado!";
} else {
echo "<strong>" .$n. "</strong> resultado(s) encontrado(s).

";
?>
<table cellpadding="3" cellspacing="5" border="0">

<?php
while($m = mysql_fetch_array($q)){
if (($x % 2) == 0){
?>
<tr bgcolor="#F8F8F8">
<td><?php printf("<strong>%s</strong>, %s", $m['title'], $m['author']); ?></td>
</tr>
<? } else { ?>
<tr>
<td><?php printf("<strong>%s</strong>, %s", $m['title'], $m['author']); ?></td>
</tr>
<?php
}
$x++;
}
?>
</table>
<?
}
}
?>

  
 
Resposta de removido em 18/07/2007 - 19:32h:
* removido usa Nenhuma
* removido tem conceito: nenhum voto.
 


o que seria "puxando"?

 
Resposta de heckjp em 18/07/2007 - 19:34h:
* heckjp usa elementary OS
* heckjp tem conceito: nenhum voto.
 


nao esta executando minha query consequentemente meu codigo nao esta fazendo o q quer

 
Resposta de luiscarlos em 19/07/2007 - 19:30h:
* luiscarlos usa Fedora
* luiscarlos tem conceito: nenhum voto.
 


meu amigo, sempre que vc tiver um problema assim, vc pode mandar imprimir a query que ele esta tentando consultar, muitas vezes é erro na sua select..uma coisa que percebi é que seu campo select no html estah sem os valores value

<select name="criterio">
<option>Autor,Título,Assunto</option>
<option>Autor</option>
<option>Título</option>
<option>Assunto</option>
</select>

tinha que ser assim

<select name="criterio">
<option>Autor,Título,Assunto</option>
<option value="autor">Autor</option>
<option value="titulo">Título</option>
<option value="assunto">Assunto</option>
</select>

e outra coisa que vc poderia fazer pra melhorar seu codigo tirando akeles "ifs" é fazer assim

$q = mysql_query("SELECT DISTINCT(title), author FROM biblio WHERE ".$a." LIKE '%" .$p."%'");

mas pra isso vc teria que colocar o select no seu html como lhe falei..um abraço!

  


ATENÇÃO: Antes de contribuir com uma resposta, leia o artigo Qualidade de respostas e certifique-se de que esteja realmente contribuindo com a comunidade. Muitas vezes o ímpeto de contribuir nos leva a atrapalhar ao invés de ajudar.

Contribuir com resposta



CAPTCHA
[ Recarregar imagem ]

Digite o código acima:

  
* Nota: só é possível enviar respostas usuário que possui conta e esteja logado com ela, caso contrário sua mensagem será perdida.



Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts