Autor | Zpráva | ||
---|---|---|---|
Tred Profil |
#1 · Zasláno: 7. 5. 2006, 08:59:12
tohle je formulář na vyhledávání:
<form method=post action=vysledky.php> <table> <tr><td><font color=#FFFFFF size=2>Hledat v:</td> <td><select name=searchtype> <option value=word>Názvu</option> <option value=popis>Popisu</optoin></select></td> <td><font color=#FFFFFF size=2>Vyhledávaný výraz:</td> <td><input type=text name=searchterm size="20"></td> <td><input type=submit value=Hledat></td></tr> </table> </form> tohle je stránka která formulář zpracuje a odesle pozadavek databasi: <?php $searchtype=$_POST['searchtype']; $searchterm=$_POST['searchterm']; $searchterm= trim($searchterm); if (!$searchtype || !$searchterm) { echo '<font size=2 color="#FFFFFF">Neuvedli jste vąechny informace potřebné ke hledání. Vra»te se prosím zpět a zkuste to znovu.</font>'; exit; } if (!get_magic_quotes_gpc()) { $searchtype = addslashes($searchtype); $searchterm = addslashes($searchterm); } @ $db = new mysqli('localhost', 'uživatel', 'heslo', 'database'); if (mysqli_connect_errno()) { echo '<font size=2 color="#FFFFFF">Chyba: K databázi se nelze připojit. Zkuste to prosím později.</font>'; exit; } $query = "select * from words where ".$searchtype." like '%".$searchterm."%'"; $result = $db->query($query); $num_results = $result->num_rows; echo '<font size=2 color="#FFFFFF"><p>Počet nalezených výrazů: '.$num_results.'</p>'; for ($i=0; $i <$num_results; $i++) { $row = $result->fetch_assoc(); echo '<p><strong>'.($i+1).'. Název: '; echo htmlspecialchars(stripslashes($row['word'])); echo '</strong><br />Popis: '; echo stripslashes($row['popis']); echo '</p>'</font>; } $result->free(); $db->close(); ?> když dám ale vyhledat nějaký výraz který v databázi je tak mě to nic nenajde ani nehodi chybu. proste se nic nestane!!! nevite v cem je chyba??? |
||
Jan Tvrdík Profil |
#2 · Zasláno: 7. 5. 2006, 09:58:44
zkus smazat ten zavináč před $db a případně nech vypsat mysqli_error(). Třeba je tam někde chyba v dotazu. Zkus vypsat proměnné, kde se dá a sledovat, jestli se někde "nepokazily"
PS: já mysqli neznám, znám jenom mysql, ale ono je to všechno podobný |
||
Tred Profil |
#3 · Zasláno: 7. 5. 2006, 10:30:15
no to mysqli connect errno by mělo hlásit chybu a ten zavináč to myslím potlačuje .....
|
||
Jan Tvrdik Profil * |
#4 · Zasláno: 8. 5. 2006, 14:10:11
protože mysqli neumím a ani to nemám naistalovaný, celý jsem si to přepsal do MYSQL. Stále se ale nic nezobrazovalo, i když to bylo ve zdroji validně napsaný. Pak se to stalo. Já na to přišel. Celý problém je naprosto banální nemá tam být color="#FFFFFF"(to je bílá a ta není vidět), ale color="#000000" (černá a ta už vidět je)
|
||
Jan Tvrdik Profil * |
#5 · Zasláno: 8. 5. 2006, 14:11:23
Akorát pořád nechápo, co přesně ošetřuje to:
if (!get_magic_quotes_gpc()) |
||
Anonymní Profil * |
#6 · Zasláno: 9. 5. 2006, 20:48:06
if (!get_magic_quotes_gpc())
{ $searchtype = addslashes($searchtype); $searchterm = addslashes($searchterm); } ak nieje zapnuta direktiva get_magic_quotes_gpc() ktora automaticky slasuje (pekne slovo) tak sa prevedie kod na slasovanie premennych zadanych uzivatelom. tj zabezpecenie |
||
Jan Tvrdík Profil |
#7 · Zasláno: 10. 5. 2006, 08:06:17
aha
|
||
Časová prodleva: 18 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0