Autor Zpráva
Jan
Profil
Ahoj mám takovýto jednoduchý skript
<form method="post" action="<?echo $_SERVER["PHP_SELF"]?>">
  Zboží: <input name="retezec" value="<?echo $_POST["retezec"]?>">
    <input type="Submit" name="odesli">
</form>


<?php



$dbHost = 'hz-';
$dbUser = '';
$dbPass = '';
$dbName = '';



      mysql_connect($dbHost, $dbUser, $dbPass);
      mysql_select_db($dbName);
      mysql_query("SET NAMES 'utf8'");
      $vysledek = mysql_query("select * from tbl_product where pd_name=".$_POST["retezec"]);
      $radku = mysql_num_rows($vysledek);
      if ($radku==0) echo "záznam ".$_POST["retezec"]." nenalezen";
      else
      { 
      echo "záznam ".$_POST["retezec"]." má následujících $radku rádků:<BR>";
      while ($zaznam=MySQL_Fetch_Array($vysledek)):
        echo $zaznam["pd_name"]."<BR>\n";
      endwhile;
      }
    
  
;?>


Bohužel mi nefunguje, vypisuje chybu viz Zde je přímí odkaz na tento script
Tímto skriptem chci říci nadi mi zadané slovo v produktech , pkud tam je vypiš celý název produktu.
Pozěji z něj udělám odkaz na ten soubor a další věci, nyná potřebuji poradit v čem mám chybu, děkuji za rady.

I přez vypisování chyby nevyhledá zboží z tabulky...
panther
Profil
Jan:
máš špatně sql dotaz, vypiš si mysql_error().
Jan
Profil
píše mi to tohle :
Došlo k chybě v dotazu: select nebo jiny sql prikaz...
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'sql prikaz...' at line 1


Co to znamená nevím
Majkl578
Profil
Jan:
Co to znamená nevím
Znamená to, že v SQL dotazu je chyba. Lokalizovat ji nelze, protože jsi smazal jedinou možnost její identifikace. Tipuju to na mezery v $_POST["retezec"].
Script je náchylný k SQL injection.
__construct
Profil
Čo takto dať string do úvodzoviek ??
$vysledek = mysql_query("select * from tbl_product where pd_name='{$_POST["retezec"]}'");


Majkl578:
Script je náchylný k SQL injection.
A tak ako Ti Majkl napísal ošetri si to ..
Keď Ti tam pošlem
blbec'; DROP TABLE tbl_product; --
čo sa asi stane .. ?
Majkl578
Profil
__construct:
o sa asi stane .. ?
Nic. Vícenásobné dotazy v jednom volání mysql_query nejsou z bezpečnostních důvodů dovoleny.

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