Starší komentáře ke článku: Zjednodušte si práci - autentifikace uživatele

Zpět na článek | Úvodní stránka Interval.cz

Avatar

Autor komentáře: Vita

Datum vložení: 16.5.2003 1:27:40

Mohu se optat nakolik je tohle ciste? Z mnoha mist jsem slysel ze bych nemel pristupovat natvrdo k interni promenne objektu - a na podobne veci mit funkci...

Avatar

Autor komentáře: Molir

Datum vložení: 16.5.2003 8:27:30

Z hlediska "cistoty" OOP je to neciste... pristupovat k atributum objektu vyhrade pres pristupove fce se doporucuje proto, ze v dobe psani tridy muze byt hodnota reprezentujici dany atribut ulozena opravdu v onom atributu, ale behem evoluce se muze stat, ze dana hodnota bude muset byt pocitana z nekolika jinych atributu, podle sily vetru ;-) a podobne.
Pokud se pouzije fce, neni v kodu pouzivajicim onu tridu co menit, pokud se pouzije primy pristup k atributu, muze byt toho, co zmenit, celkem dost (a uz jenom najit vsechna tato mista, kde se to ma zmenit, muze byt dost narocne, nemluve o moznosti zavleceni chyb)... ono u malych veci, jako je toto, to tak nebije do oci, ale pokud je to nejaka "oblibena" trida ve velkem systemu, tak potes priroda...

Avatar

Autor komentáře: Vita

Datum vložení: 16.5.2003 9:43:13

No prave, zacal jsem pachat objekt na praci s databazi (ano ano, inspirace je zde) i kdyz je trosku vymakanejsi a prave jsem si lamal hlavu jak me irituje ze si na zacatku musim zavolat SELECT VERSION() abych zjistil jesli muzu pouzivat SQL_CALC_ROWS() nebo musim pachat county... diky za shrnuti

Avatar

Autor komentáře: Ron

Datum vložení: 16.5.2003 7:14:35

Nevite nekdo proc nejde stranky ukladat off-line?

Avatar

Autor komentáře: Jméno a příjmení

Datum vložení: 16.5.2003 9:50:21

To nějak souvisí s tématem?! Nebo nevíš, proč dneska neměli vlašák?

Avatar

Autor komentáře: Platinix

Datum vložení: 16.5.2003 18:57:00

Nevím proč(mě také nejde), ale stahuj verzi pro tisk a půjde ti to.

Avatar

Autor komentáře: Jméno a příjmení

Datum vložení: 4.9.2003 2:24:46

Off topic!!!You suck :)

Avatar

Autor komentáře: Tomáš Bárta

Datum vložení: 18.5.2003 21:41:01

Nešlo by to udělat elegantněji přes sessions? Vždyť od toho tady jsou, že?

Avatar

Autor komentáře: Vít Peprníček

Datum vložení: 19.5.2003 10:19:06

Toto se da samozrejme pouzit i se session staci identifikacni retezec misto predavani v url ulozit do session. Stejne, i pri pouziti session by bylo potreba udelat přihlášení, odhléšení, registrace ... a hlavne od toho tady ta trida je.

Avatar

Autor komentáře: Jerry III

Datum vložení: 20.5.2003 1:30:30

Jen me tak napada jestli neni podstatne lepsi pouzivat stored procedures misto budovani SQL dotazu. Ma to hodne vyhod, je to rychlejsi (nemusi se nic parsovat a execution plan je pri dobre napsany procedure predkompilovanej) a ve spojeni s command objektama a kolekci parametru i bezpecnejsi (nemusi se quotovat hodnoty parametru). To vse samozrejme za predpokladu ze clovek pouziva databazi, ne MySQL...

Avatar

Autor komentáře: gpn

Datum vložení: 20.5.2003 8:39:01

hehe :)
mám rád všechny takový chytráky, co haněj MySQL... ale když pak přijde na řadu nějakej benchmark, tak je výsledek vždycky stejnej...

Avatar

Autor komentáře: Jméno a příjmení

Datum vložení: 20.5.2003 20:10:35

me too.

Avatar

Autor komentáře: Jméno a příjmení

Datum vložení: 21.5.2003 9:27:56

MySQL je dobra na male veci, sem tam neco ulozit, neco vybrat a zobrazit (tj. chaty, RS a podobne).
Ale nejake slozitejsi systemy, kde potrebuji referencni integritu, transakce a podobne bych s ni rozhodne nedelal... teda ne aspon do doby, nez bude umet urcite veci definovane v SQL standartech, jako treba sekvence, auto_increment muze byt hodne zradny...

Avatar

Autor komentáře: Jerry III

Datum vložení: 22.5.2003 3:10:38

Jasne, kdyz porovnavam jabka s hruskama tak je vysledek takovej jakej budu chtit. MySQL je rychly protoze skoro nic neumi (treba stored procedury neumi dodnes, vnoreny dotazy umi az od 4.1, transakce a foreign klice az od 3.24 a i tam jen pro nektery typy tabulek, neumi full outer join, a tak dal, tohle sou jen veci ktery mne osobne znemoznujou pouzit MySQL jako DB engine), nemluve o tom jestli ty benchmarky (nejakej odkaz kdyz se s nima ohanis? Na tpc.org MySQL proste neni) bezej na transakcnich tabulkach (InnoDB nebo BDB) nebo ne (coz je default)? Pokud si prectes rozdily tak rychlost je sakra ovlivnena.

Avatar

Autor komentáře: Vita

Datum vložení: 20.5.2003 21:21:26

A pri volani stored procedures snad nemusite osetrovat? To ze v samotne procedure uz nemusite (protoze delate s promennou) je sice pravda - jenze pokud ji musite osetrit JEDNOU tak uz je to jedno.

Avatar

Autor komentáře: Jerry III

Datum vložení: 22.5.2003 2:58:10

Nemusim pokud pouziju [prepared] command a parametry predavam jako kolekci hodnot (pokud si nikdy nedelal s nicim jinym nez PHP a MySQL tak si nastuduj jak funguje ODBC/JDBC/OLE DB a podobny). Tj. nevytvarim zadnej string ve kterym si musim davat bacha na quotovani hodnot a tak dal.

Hlavni vyhoda je samozrejme v tom, ze se nemusi parsovat a kompilovat SQL dotaz a hledat nejvyhodnejsi execution plan, protoze SP sou predkompilovany a pokud sou poradne napsany (treba plne kvalifikovany jmena tabulek aby SQL engine nemusel hledat kterou tabulku bude pouzivat v zavislosti na kontextu) tak je i vybranej nejvyhodnejsi execution plan (tj. jaky indexy se pouzijou a tak dal).

Avatar

Autor komentáře: Jméno a příjmení

Datum vložení: 22.5.2003 3:14:46

Jeste se opravim, samozrejme ze bych mel kontrolovat platne hodnoty, ale nemusim se zabyvat vecmi jako spravnym quotovanim hodnot a SQL injenction atakama.

Avatar

Autor komentáře: Vita

Datum vložení: 22.5.2003 16:07:55

Nejak si nerozumime. Jde o to ze volam-li SP, tak jako tak to tam prece musim zaslashovat - v opacnem pripade totiz udelam chybu v tom ze mu budu posilat 'logicky' nesmysl, ne?

A pokud to udelam v tomhle kroku tak uz je jedno jestli to udelam SP nebo klasicky. Ano, je to rychlejsi - na druhou stranu v tomhle pripade je otazka zda SP napr. v MSSQL bude rychlejsi nez dotaz + update v MySQL - ale o to tady nejde.

SQL injection a quotovani je imho naprosto podruzna zalezitost - na veskere podobne operace mam tridu ktera veskere osetreni provede sama v zavislosti na zadanych hodnotach, nazvech sloupcu a tom jako co se to ma do tabulek vlozit tzn. veskere osetrovani je tak jako tak automaticke.

Avatar

Autor komentáře: Jerry III

Datum vložení: 22.5.2003 17:59:47

Pokud predavas parametry pres kolekci parametru (tj. nevytvaris string s textem toho co volas) tak nic slashovat nemusis - udela to (pokud je to potreba, imho ne) ta DB knihovna co pouzivas (jak uz sem psal, JDBC/ODBC/OLE DB a jim podobny). Tj misto "exec sp_procedura '" + parametr + "'" udelas asi tohle:

cmd.text = "sp_procedura";
cmd.Parameters.Append(CreateParam(parametr, ...))
cmd.Execute()

Tam nic slashovat nemusis.

Avatar

Autor komentáře: Vita

Datum vložení: 22.5.2003 18:47:55

Nojo, ale jak to tam das. Co kdyz parametr bude treba "delfin, a) marabu" - prece to do neceho uzavrit musis?

Avatar

Autor komentáře: Jerry III

Datum vložení: 24.5.2003 20:48:24

Nemusis, uzavre to ta knihovna co pouzivas (pokud je to potreba a uzavre to jak je to potreba a pokud v ni nejsou chyby tak ani na nic nezapomene).

Avatar

Autor komentáře: Pavel Jakubisko

Datum vložení: 26.5.2003 11:34:24

Vít Peprníček - prosimte, co to je autentifikace?? To fakt neznam!! Znam autentizace a autorizaci, ale autentifikaci fakt ne.

???

Avatar

Autor komentáře: Jméno a příjmení

Datum vložení: 4.9.2003 2:21:56

Nebud zvedavej !!A stejne by te to nezajimalo...

Avatar

Autor komentáře: patrik

Datum vložení: 16.6.2003 7:57:59

Ahoj,
Sorry za Off topic ale - potreboval bych rozchodit session u sebe doma (mam PHP na IIS) - ani za boha se mi nepodarilo predat data ze session do dalsich souboru. fyzicky se mi session vytvori uplne bez problemu ale pak uz z ni nic nevycucnu. Nevite jak na to?

Avatar

Autor komentáře: Broli

Datum vložení: 6.11.2003 12:23:31

Jo, mel jsem uplne stejnej problem. Na netu to fachalo, ale doma pod Woknous XP a IIS ani nahodou. Zkousel jsem se ptat na ruznejch mistech, ale nic. Tak jsem nainstaloval druhy Woknous a na ne Apache a tam to beha uplne v pohode! Takze rada je asi jasna... prejdi na Apache. Jestli to ale pod IIS vyresis, dej mi vedet :) Ja osobne to totiz delal nerad, ponevac rozbehnout IIS je dle meho nazoru vyrazne jednodussi nez rozbehnout Apache, ale na jine reseni jsem neprisel.

Avatar

Autor komentáře: Dano

Datum vložení: 9.10.2003 16:10:03

Ahojte. rád by som použil túto autentifikáciu užívateľa na chat, ktorý je rozdelený do frames, ale každá časť frames sa zobrazí len keď je splnená podmienka:

<?if(IsSet($id_autora) && $kod == "$id_mysql"):?>

príčom premenná $id_mysql sa vyberá z DB. Inak sa tie stránky vôbec nezobrazia. Neviete mi prosím vás poradiť, ako mám predávať id_autora v URL?

Avatar

Autor komentáře: Tom

Datum vložení: 17.10.2003 20:52:57

Zdravim, chtel bych se zeptat, co mam dat na dalsi soubory, kdyz chci, aby se tam bylo mozne dostat pod jmenem a heslem? Jsem uplny zacatecnik a toto mi tu jaksi chybi... nejakou hlavicku nebo neco, pres co by me to nepustilo dal a napsalo to, ze jsem treba neautorizovany uzivatel nebo tak neco.
Dik za odpoved

Zpět na článek | Úvodní stránka Interval.cz