From: | angelo(dot)rigo(at)globo(dot)com |
---|---|
To: | pgsql-php(at)postgresql(dot)org |
Subject: | Re: forms /selects |
Date: | 2002-12-10 16:52:45 |
Message-ID: | 3DCBFE22000E94C8@riosf06.globoi.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-php |
Hi
I see my error was not using the "like"
but now i fall in other problem:
I have made an if else to display a message
if have no name with the selected leter as initial
it works but disply too:
Warning: Unable to jump to row 0 on PostgreSQL result index 2 in /var/www/html/inscricao/resultado_a1.php
on line 80
how could i handle this?
Thank?s in advance:
here is my actual code:
Pesquisa de nome por letra inicial
<BR><form method="post" size="1" action="<?php print("$PHP_SELF"); ?>">
<select size="1" name="letra">
<option selected>Escolha letra inicial
<option value=A>A
<option value=B>B
<option value=C>C
<option value=D>D
<option value=E>E
<option value=F>F
<option value=G>G
<option value=H>H
<option value=I>I
<option value=J>J
<option value=K>K
<option value=L>L
<option value=M>M
<option value=N>N
<option value=O>O
<option value=P>P
<option value=Q>Q
<option value=R>R
<option value=S>S
<option value=T>T
<option value=U>U
<option value=V>V
<option value=X>X
<option value=Y>Y
<option value=Z>Z
</select><input type="submit" value="Enviar"></form></TD>
</TR>
</TABLE> <br>
<?php
$db = pg_connect("dbname=db user=user");
$query ="SELECT name FROM aprovados WHERE (nome like '$leter%') ORDER BY
name ASC ";
$result = pg_exec($db, $query);
if (!$result) {printf ("Não há nomes com esta letra inicial!"); exit;}
$numrows = pg_numrows($result);
/***********************
actual problem
***********************/
if ($numrows=='0') {
print("Não foram encontrados nomes iniciados por : $letra");
print("<a href='javascript:history.back(-1);'><<Voltar</a>");
}
else
$row=0;
printf ("<table border=0>");
printf ("<tr bgcolor='#FFFF33'><td><b>Nome</b></td></tr>");
do
{
$myrow = pg_fetch_array ($result,$row);
if($row % 2) {
$bgcolor="#FFFF99";
}
else {
$bgcolor="";
}
printf ("<tr bgcolor='$bgcolor'><td>%s</td></tr>",$myrow[nome]);
$row++;
}
while ($row < $numrows);
printf ("</table>");
pg_close($db);
?>
'>'-- Mensagem Original --
'>'To: pgsql-php(at)postgresql(dot)org
'>'Subject: Re: [PHP] forms /selects
'>'From: jco(at)cornelius-olsen(dot)dk
'>'Date: Tue, 10 Dec 2002 15:03:33 +0100
'>'
'>'
'>'I see a couple of errors, one of which is the source of your problem.
'>'You write:
'>' "SELECT name FROM thetable WHERE (nome=$leter%) ORDER BY nome
ASC";
'>'This would evaluate to
'>' "SELECT name FROM thetable WHERE (nome=A%) ORDER BY nome ASC";
'>'
'>'What you need to write is:
'>' "SELECT name FROM thetable WHERE (nome like '$leter%') ORDER
BY nome
'>'ASC";
'>'
'>'"like" is required to make regular expression match.
'>'The quotes are always required when dealing with strings (and a few
other
'>'
'>'types).
'>'
'>'You could have just debugged this by
'>' echo $query;
'>'
'>'Also: Letter contains two t's. :)
'>'
'>'Regards
'>'/Jørn Cornelius Olsen
________________________________________
A busca mais veloz e precisa da internet. Acesse agora: http://www.zoom.com.br.
From | Date | Subject | |
---|---|---|---|
Next Message | angelo.rigo | 2002-12-10 17:19:10 | Re: forms /selects solution |
Previous Message | Vince Vielhaber | 2002-12-10 14:16:54 | Re: Large file upload |