Wij moeten een site maken met een login en een database
Waar dus een host kan inloggen en andere mensen hun naam kunnen achterlaten.

Wie kan ons helpen ?
Wat is je kennis tot nu toe met HTML en PHP?

Het beste is om gebruik te maken van PHP Sessies en de opslag in een MySQL database, gebruikmakend van de mysqli-functies.

Eerst controleer je of de velden zijn ingevoerd, en dan of de gebruikersnaam en/of het wachtwoord -die in de database zijn opgeslagen- correct zijn. Indien dit niet het geval is toon je een foutmelding. Daarna kan je een controle doen of iemand niet verbannen cq. niet geactiveerd is. En als alles goed is, dan plaats je een PHP sessie, waarmee je aan de bezoeker zijn computer duidelijk maakt dat hij is ingelogd.

Verder is het verstandig het wachtwoord met de functies [php]password_hash[/php] en [php]password_verify[/php] op te slaan en te controleren. Gebruik liever geen md5() omdat dit tegenwoordig zéér onveilig is bij inlogsystemen.
Wesley, wat heb je zelf al gedaan?
Dit is gewoon weer een vraag of iemand je huiswerk wil maken.
Zie je vorige reeds gesloten topic.
- Ariën - op 13/02/2017 15:00:11
Gebruik liever geen md5() omdat dit tegenwoordig zéér onveilig is.

MD5 is van zichzelf niet veilig of onveilig, enkel de toepassing voor bepaalde doeleinden kan onverstandig zijn. En dat is vaak niet eens uitsluitend de schuld van MD5 zelf, maar bijvoorbeeld omdat je password-hashes achterhaalbaar zijn doordat SQL-injectie mogelijk is en er verder geen enkele beveiligingslaag aanwezig is - de MD5-check is dan je enige line of defense. Oftewel, de veiligheid over de hele linie van je website rammelt, maar MD5 is de (enige) boosdoener? Dat lijkt mij het oversimplificeren van problemen.

Ik ben het stigmatiseren van MD5 een beetje beu. Je gebruikt iets verkeerd, en doet dan je beklag dat iets slecht is. Dan zit het probleem toch echt tussen de stoel en het toetsenbord.
Maar daarvoor stond nog een regeltje, Thomas. Dat ging over het inlogsysteem, en in die praktijk is MD5 onveilig te noemen.
Oh, en daarom pas je je reactie aan naar "... bij inlogsystemen" omdat het blijkbaar toch niet zo evident was :p. Je presenteerde het meer als een algemene "rule of thumb" zonder al te veel onderbouwing. Als je het anders had verwoord (wat je inmiddels hebt gedaan) had ik ook niet gereageerd.

Als je tussen client en server geen HTTPS gebruikt, maakt het nauwelijks nog uit hoe je vervolgens op de server wachtwoorden opslaat.

Maar ik denk dat we dit topic maar eens op slot gaan zetten: het is net zoals het vorige topic van de TS een huiswerkvraag en de vraag is bovendien véél te algemeen en véél te breed.

Reageren