Autor Zpráva
Generation
Profil *
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
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 *
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
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
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
...
if ($results && mysql_num_rows($results)) {
...
Generation
Profil *
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'>";
}?> 
Ajaxem získávám text písně. Ovšem v názvu skladby může být apostrof a nebo & a další znaky. Pokud je apostrof tak to řeší právě 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

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