Autor Zpráva
QGAnna
Profil
Dobrý den,
mám něco jako vyhledávač, ale má jednu vadu, nevyhledává :-). Je to tady. Když dáte vyhledat ahoj, správně by se mělo zobrazit Nazdar. a nezobrazí se nic. Kód je:
Napište pouze jedno klíčové slovo a pište ho pouze malými písmeny. Jestli nevidíte výsledek, zkuste napsat jiný výraz.<br>
<form><input type="hidden" value="help" name="str"><input name="slovo"><input type="submit" value="hledat"></form>
<?
$spojeni = mysql_connect("mysql.webzdarma.cz","xxx","xxxx" );
mysql_select_db("habbotour", $spojeni);
$vysledek = mysql_query("select * from help where nazev=$slovo");
echo $vysledek;
 ?> 

Nějáká hloupá chyba? Prosím kde.
panther
Profil
QGAnna:
ve vlastním zájmu si smaž ty loginy k DB.

K vyhledávání:
chceš-li vyhledávat fulltextem, najdi si, jak se fulltextem vyhledává. Chceš-li vyhledávat jinak, můžeš použít třeba LIKE. Fulltext bude samozřejmě lepší.

Tobě to nemůže vrátit nic, protože nemáš v tabulce ve sloupci nazev hodnotu stejnou jako vyhledávané slovo. Nebo máš? Navíc ti kolem chybí apostrofy, doplň je.
QGAnna
Profil
No já jsem, tohle už jsem jednou udělala.:-D
Jo jo, slovo tam mám, apstrofy zkusím.
QGAnna
Profil
Hmm tak teď nevím kam. Řekneš prosím? :-)
Keeehi
Profil
1) echo mysql_query(); ti nikdy nezobrazí to co by sis představovala viz. Musíš použít ještě nějakou funkci mysql_fetch_* (za * si vhodně doplň)
2) místo $slovo zkus $_GET["slovo"]
3) doporučil bych ti vyplnit u toho formuláře action a method. Funguje to i bez toho, ale je to jistější .
samozřejmě + věci co psal panther.
panther
Profil
QGAnna:
kdyby sis nastudovala základy MySQL, zjistila bys, že stringy se píší do apostrofů. Totéž by ses dozvěděla, kdyby sis vypsala mysql_error.

mysql_query("select * from help where nazev='" . $slovo . "'");
QGAnna
Profil
Díky.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0