Diskuze: MySQL wrapper
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.

Člen

Zobrazeno 11 zpráv z 11.
//= 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.
podľa http://php.net/…ro.mysql.php :
This extension is deprecated as of PHP 5.5.0, and is not recommended for writing
new code as it will be removed in the future. Instead, either the mysqli or
PDO_MySQL extension should be used.
takže nemal by si používať túto MySQL extenziu (php), teda ani tieto funkcie: http://php.net/…ef.mysql.php (list)
mal by si sa radšej naučiť PDO (http://php.net/…book.pdo.php) alebo MySQLi (http://php.net/…k.mysqli.php)
Ja si myslím že PDO je najlepšia cesta.
Diky moc. A nevieš náhodou o nejakej stránke kde sa dá to PDO naučiť? Našiel som to iba v angličtine a to mi celkom robí problém.
Ahoj, kromě ItNetworku, kde je o tomto způsobu také něco psáno, se
můžeš podívat například zde: http://jecas.cz/php-pdo. Jsou tam sice k tématu jen 4
stránky, ale myslím si, že to velice postačuje.
Vždyť to máš přímo tady, stačilo by trochu hledat - http://www.itnetwork.cz/…adlo-navstev
A ešte jedna vec. Teraz skúšam urobiť neobjektový rs (podľa NERS
návodu tu na devbooku) a mám problém s prihlasovaním. Keď to urobím podľa
toho (s wrapperom) tak všetko funguje ale neviem ako to urobiť to isté s PDO.
môže mi niekto poslať kód alebo povedať aspoň?
S "čistým" PDO je trochu problém, protože ho nelze používat staticky. Tzn. musíš mít někde přístup k proměnné, která obsahuje instanci PDO třídy.
Niečo som pozeral a tam mi poradili to urobiť takto:
$dotaz = $pdo->prepare("SELECT uzivatele_id, admin FROM uzivatele WHERE
jmeno = ? AND heslo = SHA1(?)");
$vysledok = $dotaz->execute(array($_POST['jmeno'], $_POST['heslo'] .
"t&#ssdf54gh"));
a potom s $vysledok už môžem kontrolovať či sa nachádza úživateľ s daním menom
V prvom rade musíš mať zadefinovanú premennú $pdo. Najlepšie sa to
robí tak, že si spravíš triedu, kde ju zadefinujes a vlastne ňou pripojiš
PHP k DB.
Ďalej by som nedával query do prepare ale by som ho tam vkladal cez premmenú.
Ten príkaz execute nie je tiež ideálny a myslím, že nie ani správny.
Parametre by som do neho nevkladal ale by som ich nabindoval (pozri si niečo o
tom) do query.
Edit: tak je to správne ale mne sa to tak nepáči
Zobrazeno 11 zpráv z 11.