Autor | Zpráva | ||
---|---|---|---|
Generation Profil * |
#1 · Zasláno: 24. 2. 2015, 16:00:45
Dobrý den,
chtěl bych se zeptat jestli je to takto napsaná dobře: <?php $query = "SELECT skladba FROM `lyrics` WHERE nazev = '".$result['Title']."'"; $results = mysql_query($query) or die(Mysql_error()); if (isset($results)) { echo "jo"; }else{ echo "ne"; }?> Vypisuje to u všeho jo ikdyž v databázi název není. Děkuji za případnou opravu |
||
Tomáš123 Profil |
#2 · Zasláno: 24. 2. 2015, 16:14:02
Generation:
„Vypisuje to u všeho jo ikdyž v databázi název není“ Slovo „skladba“, by malo byť tiež uzavreté v SQL apostrofoch. Čo ti vypíše var_dump($result); ?
|
||
Generation Profil * |
#3 · Zasláno: 24. 2. 2015, 16:25:58 · Upravil/a: Generation
resource(9) of type (mysql result) resource(12) of type (mysql result) Zkusil jsem to přepsat takto: <?php $query11 = "SELECT `skladba` FROM `lyrics` WHERE nazev = '".htmlSpecialChars($result['Title'],ENT_QUOTES)."'"; $row = mysql_query($query11) or die(Mysql_error()); var_dump($row); if ($row['skladba'] ==0) { echo "jo"; }else{ echo "ne"; }?> A stejně je u všech že jo ikdyž existuje jen u dvou |
||
Corwin Profil |
#4 · Zasláno: 24. 2. 2015, 16:33:31
a) isset to bude vždycky. testuješ proměnnou jestli není null, nikoli počet záznamů v db. $query = "SELECT COUNT(*) FROM `lyrics` WHERE nazev = '".mysql_real_escape_string($result['Title'])."'" $results = mysql_result(mysql_query($query),0); |
||
Tomáš123 Profil |
#5 · Zasláno: 24. 2. 2015, 16:33:38
Generation:
Návratovou hodnotou funkcie mysql_query (namiesto, ktorej by sa mala používať funkcia mysqli_query ) nie je pole, takže premennú $results nemôžeš vyhodnocovať pomocou isset() .
Riadok 3 nahraď týmto: if ($results !== false) { |
||
tiso Profil |
#6 · Zasláno: 24. 2. 2015, 16:36:58
... if ($results && mysql_num_rows($results)) { ... |
||
Generation Profil * |
#7 · Zasláno: 24. 2. 2015, 16:41:22 · Upravil/a: Generation
Corwin:
Díky ale to nebylo úplně ono. Tomáš123: Tobě také díky ale ani to nebylo úplně ono. tiso: Tohle je přesně ono, díky. Ještě bych měl jednu otázku. Nyní to mám takto: <?php $query11 = "SELECT `skladba` FROM `lyrics` WHERE nazev = '".mysql_real_escape_string($result['Title'])."'"; $row = mysql_query($query11) or die(Mysql_error()); if ($row && mysql_num_rows($row)) { echo "<a onclick='myFunction(this)' data-id='".htmlSpecialChars($result['Title'],ENT_QUOTES)."'><img width='20' height='20' src='img/lupa.png'></a>"; }else{ echo "<img width='15' height='15' src='img/delete.png'>"; }?> htmlSpecialChars($result['Title'],ENT_QUOTES) Ale pokud je v názvu skladby & už mi to text písně nezobrazí.
Jak to prosím upravit? Už vím pomocí rawurlencode
|
||
Časová prodleva: 9 let
|
0