A Username - et, hova/mibe érdemes lementeni, illetve mibe biztonságos?
A jelszót titkosítani, de ne felhasználónévről keress. Hanem AI val csinálj egy id oszlopot, és csak egyszer a felhasználónévvel lekéred azt az ID-t majd elementDatázod. Aztán:
mysql_query(Database, \"SELECT * FROM `accounts` WHERE `id` = \'\"..getElementData(telefonrol nem tudom a szintaxist)..\"\'\")
//telo
Nah.. Csak kérlek (!!!!), nagyon szépen kérlek (!!!!!!!!!!!), ne használj string-összevonást (nem tudom, hogy hívjam magyarul, de: ..-öt), mert előbb-utóbb olyan SQL injektált szervered lesz, hogy szép lesz nézni. Nézz majd utána.. Én dbQuery()-t használok, ott is stringben kell megadni a \"parancsot\", és utána a paramétereket.
Nézzünk egy példát SQL injektálásra:A kód:
myQuery = dbQuery(connection, \"SELECT * FROM accounts WHERE name = \'\".. megadottNev .. \"\' AND pass = \'\".. megadottJelszo .. \"\' LIMIT 1)
Ha emberünk felhasználónévnek megad egy admin fiókot (pl. MakroBox), (és jelszónak egy 1\' OR \'1\' = \'1), akkor a query így fog kinézni:
myQuery = dbQuery(connection, \"SELECT * FROM accounts WHERE name = \'MakroBox\' AND pass = \'1\' OR \'1\' = \'1\' LIMIT 1)
Azaz megtalálja azokat a sorokat, ahol a felhasználónév MakroBox, és a jelszó 1, VAGY 1 = 1 (AMI MINDIG IGAZ!!), azaz meg fogja találni a MakroBox accountot, és átenged.
Nem tudom, hogy ez hogyan működik mysql_query-nél, de az 90%, hogy ott sincs kivédve az injektálás, és valamilyen ilyesmi dolgot kell alkalmazni.