[Release] Login-System mit MySql Datenbank

06/28/2011 03:22 Mozo_#1
Hallo e*pvper :)


ich habe mir aus langeweile mal ein kleines Login-System geschrieben, welches die Logindaten auf eine MySql Datenbank speichert.


Inhaltsverzeichniss:

1. Webspace
2. MySql Datenbank
3. Loginscript
4. Screenshot

1. Webspace:

Wie und wo man einen Webspace bekommen kann, sollte jeder wissen und möchste ich hier auch nicht erneut erklären.

Config.php

Bei der Config.php ist zu beachten, alle daten wie z.B. den host und die Logindaten richtig auszufüllen!.

login.php

register.php

Update! recover.php:

Wichtig hierbei ist, das die config.php im selben ordner wie die login.php, register.php und recover.php sein muss.


2. MySql Datenbank:

Wie man eine MySql Datenbank erstellt usw. möchte ich ebenfalls nicht erklären, da es genug andere anleitungen gibt.

Wenn Sie eine Datenbank besitzen, einfach dieses Script ausführen:

PHP Code:
SET FOREIGN_KEY_CHECKS=0;

-- ----------------------------
-- 
Table structure for `user_data`
-- ----------------------------
DROP TABLE IF EXISTS `user_data`;
CREATE TABLE `user_data` (
  `
useridint(11NOT NULL AUTO_INCREMENT,
  `
loginvarchar(255) DEFAULT NULL,
  `
passwordvarchar(255) DEFAULT NULL,
  `
emailvarchar(255) DEFAULT NULL,
  
PRIMARY KEY (`userid`)
ENGINE=MyISAM AUTO_INCREMENT=DEFAULT CHARSET=latin1;

-- ----------------------------
-- 
Records of user_data
-- ----------------------------
INSERT INTO `user_dataVALUES ('1''admin''21232f297a57a5a743894a0e4a801fc3''[Only registered and activated users can see links. Click Here To Register...]');
INSERT INTO `user_dataVALUES ('2''member''aa08769cdcb26674c6706093503ff0a3''[Only registered and activated users can see links. Click Here To Register...]'); 
In dieser Tabelle befinden sich bereits 2 benutzer: admin und member.
Das Passwort ist gleich dem Loginnamen!

3. Loginscript:

So, nun kommt das LoginScript in autoit:

Login.au3:

Update: login.au3 mit Password recovery :

Ichtig hierbei ist, die adresse zu der login.php,
PHP Code:
$get _INetGetSource("http://**************/login.php?login="&GUICtrlRead($f_login)&"&pw="&md5(GUICtrlRead($f_password))) 
und die adresse zur register.php,
PHP Code:
$regget _INetGetSource("http://**************/register.php?login="&GUICtrlRead($f_login_reg)&"&pw="&md5(GUICtrlRead($f_password_wdh))&"&email="&GUICtrlRead($f_email)) 
anzupassen!


md5.au3:


4. Screenshot:

[Only registered and activated users can see links. Click Here To Register...][Only registered and activated users can see links. Click Here To Register...]

Ich hoffe das Script hilft manchen leuten.

Mit freundlichen Grüßen
Mozo ;)
06/28/2011 14:17 Reeek#2
Sowas in der Art hat FreakBP zwar schon released, aber schöner Code + gut erklärt, ich verstehe es (aber ich kann PHP und AutoIt auch schon :))... bekommst ein thx für die Mühe
06/29/2011 00:00 Mozo_#3
Ich fande nur sein Sytem irgendwie sehr unsicher :D

Und da ich nach der arbeit immer tierische langeweile habe, hab ich mir gedacht ich bastel mir mal sowas :P
06/29/2011 05:41 ~De@dly Silence~#4
Hab das mal ausprobiert weil ich mir das System mal anschauen wollte, doch wenn ich falsche Infos eingebe kommt immer
"Erfolgreich eingeloggt!
Email: 99"
obwohl $get=99 ist und somit eigentlich "Benutzername falsch" angezeigt werden müsste...
Das Gleiche passiert auch bei falschem Passwort. Irgendeine Idee wie das zu lösen ist?


//edit: Ok, hab die Lösung gefunden: Ich habe aus "If $get = "0" Then" einfach "If $get = 0 Then " gemacht und bei "If $get = "99" Then" "If $get = 99 Then".
Klappt nun wunderbar.
06/29/2011 14:15 Mozo_#5
Hab das Script recht schnell geschrieben :P

Naja werde heute abend nochmal eine erweiterung Posten :D
06/29/2011 21:12 BlackHybrid#6
Man kann doch auch das Passwort erst in dem php script hashen lassen.
06/30/2011 02:38 Mozo_#7
Soo hab mal ein kleines update gebastelt :P

Passwort recovery: Falls man sein passwort vergessen haben sollte, kann man sich nun einfach ein neues passwort per email zusenden lassen ;)

Nächstes Update beinhaltet geheimfrage und antwort + passwort ändern ;)


Falls noch jemand vorschläge oder sonstiges hat, kann er diese gerne hier posten :D
06/30/2011 02:42 Naruto™#8
nice
06/30/2011 14:03 Mozo_#9
Heute abend kommt noch Passwort Change ..
Erstmal ohne geheimfrage + antwort :P
07/01/2011 00:47 Vierus.exe#10
Nen link zum TuTorial für MySQL
[Only registered and activated users can see links. Click Here To Register...]
Und vielleicht könntest du es mehr auskommentieren für Anfänger halt.
Sonst ist es echt gut geworden bekommst nen Thx.
Ne Ip mit Logung und nen Programm Update könnte es noch beinhalten dann wäre es Perfekt für mich :-) .
07/01/2011 13:32 Mozo_#11
Ich werde heute abend mal ein größeres update releasen.

@Vierus.exe
IP-Logging und Update wäre auch möglich ;)
Wie sollte deiner meinung nach die IP's geloggt werden? :P
07/01/2011 18:02 Reeek#12
PHP hat eine Funktion, um die IP heraus zu finden... diese einfach mit dem Login-Name in einer .txt-Datei speichern, par example
07/01/2011 18:36 Vierus.exe#13
@Mozo
Auf dem Server sollten die Namen + Ip + RegistrierungPW in einer geschützten und Verschlüsselten Datei gespeichert werden die nur der Programmierer dann auch Auslesen kann. ;-)
07/02/2011 14:22 Mozo_#14
Sorry, update verschiebt sich durch private aktivitäten auf spätestens sonntag :P
07/02/2011 19:39 Vierus.exe#15
Bin verwirrt wo müssen die config.php und so weiter hin auf den Webserver oder?
was ist das alles
[Only registered and activated users can see links. Click Here To Register...]
Sind das die Befehle?
MfG
Vierus