Autor Zpráva
peter_r
Profil
Určite je to primitívna chyba, ale prosím o radu, som v php a mysql začiatočník a súrne potrebujem opraviť túto chybu

chcem vybrať z databázy určité záznamy, ktoré si niekde v inom súbore vyberiem takto:

<a href="clanky2.php?zaradenie='. htmlspecialchars($clanek['prac_id']) .'" target="_blank">Tlačiť</a>

potom v súbore clanky.2php mám

SELECT *
        FROM clanky
    WHERE prac_id=?
        ORDER BY priezvisko

tak je všetko v poriadku lebo prac_id je číslo, ale keď chcem aby výsledok bol text, urobil som to takto:

<a href="clanky2.php?zaradenie='. htmlspecialchars($clanek['zaradenie']) .'" target="_blank">Tlačiť</a>

potom v súbore clanky.2php mám

SELECT *
        FROM clanky
    WHERE zaradenie=?
        ORDER BY priezvisko

tak mi vyhadzuje chybu

Warning: PDOStatement::execute(): SQLSTATE[HY000]: General error: 2031 in C:\xampp\htdocs\ners\Db.php on line 62

keď tam dám WHERE zaradenie="šofér" tak je to ok, skúšal som WHERE zaradenie="?" ale to je asi blbosť. ďakujem.
Kajman
Profil
Pokud je to string, měl byste ho ještě zakódovat pro použití v url, aby v pořádku dorazil přes parametr do další stránky...

htmlspecialchars(rawurlencode($clanek['zaradenie']))
peter_r
Profil
Kajman:

dal som ale nepomohlo, stále tá istá chyba
Kajman
Profil
Tak ukažte celý kód, jak připravujete dotaz, bindujete proměnné a spouštíte ho. Chyba bude asi v části, kterou jste neposlal.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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

0