Keresés

Új hozzászólás Aktív témák

  • Brown ügynök

    senior tag

    válasz jeges #8373 üzenetére

    Ahogy én írtam, úgy is egy tömbbe kerül, de a $data->fetch_assoc(); csak egyetlen termék adataival tér vissza nem pedig az összessel.

  • Brown ügynök

    senior tag

    válasz jeges #8371 üzenetére

    Igen, de ha így írom :

    $response = json_encode(array_merge($nav, $data->fetch_assoc()));

    akkor csak egyetlen termékkel tér vissza, nem pedig az összessel.

  • Sk8erPeter

    nagyúr

    válasz jeges #6748 üzenetére

    Hmm, valóban, és az úgy helytelen.
    Köszi!

    Ez elég gáz, hogy ez a feladat nem megoldható adatkötéssel... :W
    Tehát akkor marad az ocsmány sztring-konkatenálás erre a feladatra... :(

  • Sk8erPeter

    nagyúr

    válasz jeges #6369 üzenetére

    persze, ez csak helyreigazítás volt, nem célzott támadás :D

  • Sk8erPeter

    nagyúr

    válasz jeges #6362 üzenetére

    Ciklussal kapcsolatban: programozási kérdésekben az ilyen jellegű alapfogalmak elég ritkán sokértelműek, jelen esetben is egyértelmű a jelentése, és programozásnál meg főleg nem mindegy, hogy egy adott szót a tényleges jelentése alapján használsz, vagy csak saját definíciót találtál-e ki rá, képzeld el, mi lenne pl. csapatmunkánál, ha mindenki más és más értelemben használná a fogalmakat.
    A Wikipédiás meghatározás a ciklusra:
    Ciklus (programozás)
    "A ciklus, vagy iteráció a számítógép-programozás és az algoritmusok egyik alapvető eszköze, amely az ismétlődő (azonos vagy hasonló) tevékenységek megvalósítására szolgál. A ciklus beépítését a programba ciklusszervezésnek is nevezik. A ciklust az egyes programozási nyelvek különböző kulcsszavakkal valósítják meg, de a működési módjukat tekintve három alaptípusba sorolhatók aszerint, hogy hányszor futnak le: ezek az elöltesztelő, a hátultesztelő és a számlálós ciklus."

    Ne vedd kötekedésnek, nem azért mondtam, hanem csak hogy tisztázzuk. :)

    "különösebb galibát egyébként az első esetben nem okoz"
    Hát ha nincs kivétel, akkor valóban nem probléma, de ellenkező esetben elég para.

    "az, hogy a try/catch-ben vizsgált jelenség utáni lépést a szerkezetbe vagy utána teszed, környezetfüggő."
    Hát nekem most a try-catch blokkokkal kapcsolatban nem jut eszembe olyan környezet, ahol a logikának teljesen ellentmondó megoldást kéne alkalmazni. :P De mondj ilyet, ha van rá ötleted.
    A try-catch esetén még az osztály példányosítását is a legtöbb esetben belepakolják a blokkba, mivel még a konstruktornál is történhet kivétel, ha valamiért nem sikerül a példányt létrehozni, ennek a kivételét is kezelni kell.
    Az említett példában a köszöntéssel kapcsolatos függvény pont szervesen hozzátartozik a korábbiakhoz, tehát nagyon nem logikus, ha épp a try-catch blokk után teszed annak a függvénynek a meghívását, aminek a lefutása épp attól függ, hogy volt-e kivétel vagy sem.
    "a példa szempontjából majdnem mindegy."
    Többek közt a fent említett indokok miatt nagyon nem. :N

  • PazsitZ

    addikt

    válasz jeges #6363 üzenetére

    Tudtommal az array_push, több érték esetén lehet gyorsabb, így egyesével semmikép sem. Akkor már inkább:
    $arr[] = $i

    Egyébként a tömbműveletek gyorsak, tehát nem biztos, hogy a folyamatos konkatenációt nem nyomja le a tömbbe pakolás és végül implode.
    De le kell mérni.

  • Sk8erPeter

    nagyúr

    válasz jeges #6342 üzenetére

    "szerintem próbáld külön a köszöntésig egy ciklusba (megjegyzem, logikailag nekem egyébként is az tűnik egy teljes ciklusnak)"

    Hol van itt ciklus? :Y

    try {
    $obj->szuletesidatum = '1985. 08. 27.';
    }
    catch (Exception $e) {
    echo 'Caught exception: ', $e->getMessage(), "\n";
    } if (!isset($e)) {$obj->koszontes();}

    ???
    a köszöntésnek épp a dátum után kéne lennie...
    if (!isset($e)) {$obj->koszontes();}
    Ennek meg a végén bocsi, de totál semmi értelme. :)
    Így pont a try-catch szép logikus blokkját bontod meg.
    Amennyiben kivételt dobunk, akkor úgysincs köszöntés, tehát egy tök felesleges feltételvizsgálatot tettél a végére.

    Meg még ezt írtad:
    try {
    $obj->szuletesidatum = 'piros';
    $obj->koszontes();
    }
    catch (Exception $e) {
    echo 'Caught exception: ', $e->getMessage(), "\n";
    } if (!isset($e)) {$obj->koszontes();}

    Főleg úgy nincs értelme, hogy amennyiben nem lenne kivétel attól, hogy beállítod "piros"-ra a változót, kétszer futna le a köszöntés.

  • Speeedfire

    félisten

    válasz jeges #6351 üzenetére

    A példa a __set() és a __get() parancsokat akarja bemutatni, hogy a __get() megnézni és ellenőrzi a dolgokat aztán a __set() pedig beállítja, csak közben még mást is implementáltak bele, így már kicsit több infó van benne mint kellene. :))

  • LW

    őstag

    válasz jeges #6336 üzenetére

    mindkettő 5.3.x volt, szal lehetséges. Most felraktam egy XAMPP-ot, nagyon gyors eddig, remélem így is marad. :B Ez 5.3.5.

  • Speeedfire

    félisten

    válasz jeges #6346 üzenetére

    Akkor a könyvben nem értem miért így volt.

    Illetve ezt sem pontosan értem:
    return call_user_func(array($this, $tulajdonosnev . 'Beallitas'), $ertek);
    return call_user_func(array($this, $tulajdonsagnev . 'Lekerdezes'));

    Itt a Beallitas és Lekerdezes sztingeket mire használja?

  • Speeedfire

    félisten

    válasz jeges #6344 üzenetére

    Ebben a formában már elfogadja a dátumot. De ha mást próbálok meg akkor megint hibát ír ki. pl 1985 08 27

  • Speeedfire

    félisten

    válasz jeges #6342 üzenetére

    A könyv végére sírni fogok ezektől a dolgoktól...

    Kivettem a piros részt is és így it hibát ír ki, szóval máshol lesz a gond szerintem. Heggesztem még a kódot, de így kicsit ciki ha már a könyvben sem jól van írva...

    Ha ezt átírtam true-ra akkor jó volt. :W
    if(strtotime($szd) == false) {

  • Speeedfire

    félisten

    válasz jeges #6340 üzenetére

    Akkor már tudom Sk8erPeter mire célzott a gányolt kóddal...

    Így módosítottam a végét, de csak a hibát írja ki. A helyes részt nem, pedig az 1985.08.27. helyes dátum formátum elvileg.

    try {

    $obj = new TulajdonsagObjektum();
    $obj->nev = "Szabi";
    $obj->szuletesidatum = '1985. 08. 27.';
    $obj->koszontes();

    $obj->szuletesidatum = 'piros';

    }

    catch (Exception $e) {
    echo 'Caught exception: ', $e->getMessage(), "\n";
    }

    Caught exception: A szuletesi datumnak egy ervenyes naptari napnak kell lennie!

  • rt06

    veterán

    válasz jeges #6270 üzenetére

    nem volt faradtsag, csak kimasoltam a john --test kimenetet
    ez par masodpercig futtatja az alatala ismert algoritmusok mindegyiket, ami megmutatja, milyen sebesseggel mukodik a bruteforce jelszotores

    a virtual c/s ertekek osszehasonlitasaval tudod megnezni, melyik jelszo milyen sebesseggel torheto (minel magasabb az ertek, annal gyorsabban tudja torni a jelszot)

    persze ez nem szamolja a hash-elesi algoritmusok hibait (ha jol tudom, md5 ennel gyorsabban is torheto), illetve mind md5, mind pedig sha1 eseteben leteznek mar olyan rainbow tablak, melyek tartalmazzak az osszes 8 karakteres jelszo hash-et

    erdemes lehet egyebkent megnezni a PHPASS framework-ot, ami lenyegesen lassabban "torheto" mindket emlitett algoritumsnal

  • rt06

    veterán

    válasz jeges #6264 üzenetére

    wall of text kovetkezik, elore is elnezest
    ez a john the ripper jelszotoro program alapertelmezett tesztjenek a kimenete, ebben tudod a bruteforce tores sebessegeit osszehasonlitani

    sozott sha1-et nem latok, sozott mdt-bol meg vagy egy csomo - sozas nelkuli van mindkettobol, raw-sha1 es raw-md5 neven keresd oket

    Benchmarking: Traditional DES [24/32 4K]... DONE
    Many salts: 24357 c/s real, 49192 c/s virtual
    Only one salt: 28641 c/s real, 45200 c/s virtual

    Benchmarking: BSDI DES (x725) [24/32 4K]... DONE
    Many salts: 1333 c/s real, 1462 c/s virtual
    Only one salt: 1473 c/s real, 1473 c/s virtual

    Benchmarking: FreeBSD MD5 [32/32]... DONE
    Raw: 1093 c/s real, 1103 c/s virtual

    Benchmarking: OpenBSD Blowfish (x32) [32/32 X2]... DONE
    Raw: 86.4 c/s real, 59.6 c/s virtual

    Benchmarking: Kerberos AFS DES [24/32 4K]... DONE
    Short: 38901 c/s real, 35428 c/s virtual
    Long: 99358 c/s real, 102400 c/s virtual

    Benchmarking: LM DES [32/32 BS]... DONE
    Raw: 516847 c/s real, 538160 c/s virtual

    Benchmarking: NT MD4 [32/32]... DONE
    Raw: 1116K c/s real, 1174K c/s virtual

    Benchmarking: Mac OS X 10.4+ salted SHA-1 [32/32]... DONE
    Many salts: 371588 c/s real, 371588 c/s virtual
    Only one salt: 310371 c/s real, 333484 c/s virtual

    Benchmarking: M$ Cache Hash [Generic 1x]... DONE
    Many salts: 2146K c/s real, 2189K c/s virtual
    Only one salt: 755073 c/s real, 770327 c/s virtual

    Benchmarking: Apache MD5 [32/32]... DONE
    Raw: 1034 c/s real, 1098 c/s virtual

    Benchmarking: HMAC MD5 [hmac-md5]... DONE
    Raw: 185234 c/s real, 187087 c/s virtual

    Benchmarking: Post.Office MD5 [STD]... DONE
    Many salts: 395042 c/s real, 398993 c/s virtual
    Only one salt: 324984 c/s real, 364704 c/s virtual

    Benchmarking: Raw MD5 [raw-md5 64x1]... DONE
    Raw: 717560 c/s real, 754933 c/s virtual

    Benchmarking: md5_gen(0): md5($p) (raw-md5) [md5-gen 64x1]... DONE
    Raw: 551984 c/s real, 574746 c/s virtual

    Benchmarking: md5_gen(1): md5($p.$s) (joomla) [md5-gen 64x1]... DONE
    Many salts: 537283 c/s real, 596325 c/s virtual
    Only one salt: 499326 c/s real, 504320 c/s virtual

    Benchmarking: md5_gen(2): md5(md5($p)) (e107) [md5-gen 64x1]... DONE
    Raw: 280712 c/s real, 292288 c/s virtual

    Benchmarking: md5_gen(3): md5(md5(md5($p))) [md5-gen 64x1]... DONE
    Raw: 174384 c/s real, 191443 c/s virtual

    Benchmarking: md5_gen(4): md5($s.$p) (OSC) [md5-gen 64x1]... DONE
    Many salts: 614400 c/s real, 639736 c/s virtual
    Only one salt: 510922 c/s real, 531991 c/s virtual

    Benchmarking: md5_gen(5): md5($s.$p.$s) [md5-gen 64x1]... DONE
    Many salts: 549893 c/s real, 610320 c/s virtual
    Only one salt: 490917 c/s real, 521600 c/s virtual

    Benchmarking: md5_gen(6): md5(md5($p).$s) [md5-gen 64x1]... DONE
    Many salts: 646906 c/s real, 659975 c/s virtual
    Only one salt: 247572 c/s real, 274778 c/s virtual

    Benchmarking: md5_gen(7): md5(md5($p).$s) (vBulletin) [md5-gen 64x1]... DONE
    Many salts: 625932 c/s real, 645093 c/s virtual
    Only one salt: 275009 c/s real, 280565 c/s virtual

    Benchmarking: md5_gen(8): md5(md5($s).$p) [md5-gen 64x1]... DONE
    Many salts: 289330 c/s real, 307604 c/s virtual
    Only one salt: 263160 c/s real, 276866 c/s virtual

    Benchmarking: md5_gen(9): md5($s.md5($p)) [md5-gen 64x1]... DONE
    Many salts: 520617 c/s real, 604395 c/s virtual
    Only one salt: 234835 c/s real, 266498 c/s virtual

    Benchmarking: md5_gen(10): md5($s.md5($s.$p)) [md5-gen 64x1]... DONE
    Many salts: 264617 c/s real, 296960 c/s virtual
    Only one salt: 243770 c/s real, 273564 c/s virtual

    Benchmarking: md5_gen(11): md5($s.md5($p.$s)) [md5-gen 64x1]... DONE
    Many salts: 267722 c/s real, 293913 c/s virtual
    Only one salt: 270067 c/s real, 275523 c/s virtual

    Benchmarking: md5_gen(12): md5(md5($s).md5($p)) (IPB) [md5-gen 64x1]... DONE
    Many salts: 374621 c/s real, 382189 c/s virtual
    Only one salt: 209869 c/s real, 211968 c/s virtual

    Benchmarking: md5_gen(13): md5(md5($p).md5($s)) [md5-gen 64x1]... DONE
    Many salts: 376649 c/s real, 380416 c/s virtual
    Only one salt: 210059 c/s real, 210059 c/s virtual

    Benchmarking: md5_gen(14): md5($s.md5($p).$s) [md5-gen 64x1]... DONE
    Many salts: 575936 c/s real, 581696 c/s virtual
    Only one salt: 259992 c/s real, 262592 c/s virtual

    Benchmarking: md5_gen(17): phpass ($P$ or $H$) [md5-gen 64x1]... DONE
    Many salts: 331 c/s real, 342 c/s virtual
    Only one salt: 310 c/s real, 344 c/s virtual

    Benchmarking: PHPass MD5 [phpass-md5]... Using phpass mode, by linking to md5_gen(17) functions DONE
    Many salts: 339 c/s real, 339 c/s virtual
    Only one salt: 339 c/s real, 342 c/s virtual

    Benchmarking: IPB2 MD5 [Invision Power Board 2.x salted MD5]... DONE
    Many salts: 370965 c/s real, 374638 c/s virtual
    Only one salt: 225773 c/s real, 228031 c/s virtual

    Benchmarking: Raw SHA-1 [raw-sha1]... DONE
    Raw: 347037 c/s real, 347037 c/s virtual

    Benchmarking: Kerberos v4 TGT [krb4 DES]... DONE
    Raw: 280102 c/s real, 294691 c/s virtual

    Benchmarking: Kerberos v5 TGT [krb5 3DES (des3-cbc-sha1)]... DONE
    Raw: 5081 c/s real, 5402 c/s virtual

    Benchmarking: Netscape LDAP SHA [SHA-1]... DONE
    Raw: 347138 c/s real, 350610 c/s virtual

    Benchmarking: Netscape LDAP SSHA [salted SHA-1]... DONE
    Many salts: 351978 c/s real, 351978 c/s virtual
    Only one salt: 321077 c/s real, 324288 c/s virtual

    Benchmarking: OpenLDAP SSHA [salted SHA-1]... DONE
    Many salts: 371532 c/s real, 375248 c/s virtual
    Only one salt: 322596 c/s real, 342758 c/s virtual

    Benchmarking: Eggdrop [blowfish]... DONE
    Raw: 1621 c/s real, 2127 c/s virtual

    Benchmarking: Oracle [oracle]... DONE
    Raw: 111283 c/s real, 111283 c/s virtual

    Benchmarking: Oracle 11g [oracle11]... DONE
    Many salts: 363222 c/s real, 366855 c/s virtual
    Only one salt: 323058 c/s real, 326289 c/s virtual

    Benchmarking: MYSQL [mysql]... DONE
    Raw: 209205 c/s real, 215610 c/s virtual

    Benchmarking: MySQL 4.1 double-SHA-1 [mysql-sha1]... DONE
    Raw: 164600 c/s real, 186794 c/s virtual

    Benchmarking: Lotus5 [Lotus v5 Proprietary]... DONE
    Raw: 36512 c/s real, 36878 c/s virtual

    Benchmarking: More Secure Internet Password [RSA MD defined by BSAFE 1.x - Lotus v6]... DONE
    Many salts: 19039 c/s real, 19230 c/s virtual
    Only one salt: 11253 c/s real, 11253 c/s virtual

    Benchmarking: LM C/R DES [netlm]... DONE
    Many salts: 62087 c/s real, 62708 c/s virtual
    Only one salt: 60142 c/s real, 60744 c/s virtual

    Benchmarking: NTLMv1 C/R MD4 DES [netntlm]... DONE
    Many salts: 86509 c/s real, 87375 c/s virtual
    Only one salt: 82005 c/s real, 82005 c/s virtual

    Benchmarking: LMv2 C/R MD4 HMAC-MD5 [netlmv2]... DONE
    Many salts: 64574 c/s real, 65220 c/s virtual
    Only one salt: 63209 c/s real, 63842 c/s virtual

    Benchmarking: NTLMv2 C/R MD4 HMAC-MD5 [netntlmv2]... DONE
    Many salts: 58568 c/s real, 59154 c/s virtual
    Only one salt: 59524 c/s real, 59524 c/s virtual

    Benchmarking: HalfLM C/R DES [nethalflm]... DONE
    Many salts: 145741 c/s real, 147199 c/s virtual
    Only one salt: 138600 c/s real, 139987 c/s virtual

    Benchmarking: MS-SQL [ms-sql]... DONE
    Many salts: 386347 c/s real, 390211 c/s virtual
    Only one salt: 354087 c/s real, 357628 c/s virtual

    Benchmarking: MS-SQL05 [ms-sql05]... DONE
    Many salts: 384428 c/s real, 384428 c/s virtual
    Only one salt: 359701 c/s real, 363299 c/s virtual

    Benchmarking: EPiServer SID Hashes [SHA-1]... DONE
    Many salts: 365137 c/s real, 368789 c/s virtual
    Only one salt: 341785 c/s real, 345203 c/s virtual

    Benchmarking: PHPS MD5 [MD5(MD5($pass).$salt) MD5]... Using phps mode, by linking to md5_gen(6) functions DONE
    Many salts: 666550 c/s real, 666550 c/s virtual
    Only one salt: 281600 c/s real, 284416 c/s virtual

    Benchmarking: MYSQL_fast [mysql-fast]... DONE
    Raw: 2013K c/s real, 2034K c/s virtual

    Benchmarking: PIX MD5 [pix-md5]... DONE
    Raw: 560534 c/s real, 566140 c/s virtual

    Benchmarking: SAP CODVN G (PASSCODE) [sapg]... DONE
    Many salts: 120317 c/s real, 120317 c/s virtual
    Only one salt: 113519 c/s real, 114655 c/s virtual

    Benchmarking: SAP BCODE [sapb]... DONE
    Many salts: 181932 c/s real, 183752 c/s virtual
    Only one salt: 152421 c/s real, 153946 c/s virtual

    Benchmarking: Netscreen MD5 [NS MD5]... DONE
    Raw: 460711 c/s real, 460711 c/s virtual

    Benchmarking: HTTP Digest access authentication [HDAA-MD5]... DONE
    Many salts: 191347 c/s real, 193261 c/s virtual
    Only one salt: 182336 c/s real, 184160 c/s virtual

    Benchmarking: generic crypt(3) [?/32]... DONE
    Many salts: 4372 c/s real, 4416 c/s virtual
    Only one salt: 4800 c/s real, 4800 c/s virtual

  • Tele von Zsinór

    őstag

    válasz jeges #6264 üzenetére

    Na igen, hosszminimum felállítása is okos dolog. Viszont itt főleg arról van szó, mikor valahogy kikerül az adatbázisod - a lényeg, hogy ne lehessen egyszerűen visszafejteni a jelszót, és ugyanazt a felhasználónév/jelszó párost végigpróbálgatni más oldalakon.

    @Speeedfire: jogosan panaszkodik, tényleg magára irányít. A mai világban már kikerülhetetlen az ajax, halogathatod, de megúszni nem fogod. Valami JS framework rengeteget segít, manapság a legelterjedtebb a jQuery, és nem csak az ajaxszal kapcsolatos egyszerűsítése miatt. Jó a dokumentációja, megéri belenézni.

  • maestro87

    őstag

    válasz jeges #6100 üzenetére

    Nekem így mondhatjátok. Azt se tudom hova, mi helyére illeszem be. Azt hittem ez csak 2 perces munka lesz, de már látom, hogy nem. Nekem meg most nincs időm órákat esetleg napokat eltölteni azzal, hogy áttanulmányozzam az egész kódot. Webprogramozáshoz nem értek és egyelőre nem is nagyon szándékozom belemélyedni, mert nincs annyi időm rá amennyit szeretnék. Csak az oldalamat szerettem volna kicsit fejleszteni ezzel.

    Azért köszönöm a segítséget midenkitől!

    szerk: De még azt megkérdezném, hogy meg lehet-e azt oldani ingyenes tárhelyen, hogy mindenféle bejelentkezés nélkül fel lehessen tölteni akár 200MB-os fájlokat is böngészőn keresztül? Mert a fentebb említett script olyan 4-5MB-nál többet nem enged feltölteni.

Új hozzászólás Aktív témák

Hirdetés