Diskuze: Vyhledávání dat ve skladu
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
Člen
Zobrazeno 14 zpráv z 14.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
Nejdřív si ujasni rozdíl mezi metodami GET a POST. Tady patří GET.
V SELECTu ti chybí podmínka za WHERE.
Ano to mi je jedno jestli tam patří GET nebo POST a pokud tam něco chybí tak mi to je taky jedno protože to funguje a to jsem rád. Já mám spíše problém s vyhledáváním v databázi. To je téma tohoto příspěvku a zrovna tvůj kometář mi moc nepomohl.
Asi jo ale "nějaká_hodnota" je teda to co napíšou do toho inputu na vyhledání ??
Ano, tímpádem to bude vypadat akorát takto nějak
SELECT * FROM sklad WHERE atribut = "$_POST[search]" ORDER BY id DESC
A záhy někdo smaže celou databázi, máš tam SQL injekci
$search = $pdo->prepare("SELECT * FROM sklad WHERE atribut = ? ORDER BY id DESC");
$search->execute(array($_GET['search']));
A to jde když je to na localu?? Nevím nevyznám se v tom ale je to v mém pc tak to přece nemůže nikdo smazat. Vím hackeři dokážou cokoliv ale asi s tim něco udělám.
A proč se to nenaučit psát rovnou tak jak je to správně ? I když se na tom učíš (a tím právě spíš) je lepší to psát tak aby to bylo bezpečné
Ano asi jo je to moje první velká práce v PHP a ve SQL injekci se moc zatím nevyznám. Ale už jsem si našel pár dobrých článků v angličině takže to zkusím zabezpečit. A díky za upozornění
Na localu tě pak naštve, když si chceš přidat herce "Peter O'Toole" a skript ti spadne. SQL injection je nutné ošetřit vždy.
Zobrazeno 14 zpráv z 14.