Soo. Eine kleine GUI fürs Schützen.
Sieht zwar relativ scheiße aus, funktioniert aber...
Die GUI, die die Abfragen macht:
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <mysql.au3>
$toolname = "Schrubbers Testtool"
$short = "Schrubber"
$dbname = "lolrofl"
$table = "test"
Local $UserName = "root", $Password = "root", $Database = $dbname, $MySQLServerName = "localhost"
_MySQL_InitLibrary()
If @error Then
TrayTip('Error', 'libmysql.dll konnte nicht gefunden werden', 10, 3)
Sleep(10000)
Exit
EndIf
$MysqlConn = _MySQL_Init()
$Connected = _MySQL_Real_Connect($MysqlConn, $MySQLServerName, $UserName, $Password, $Database)
$hSQLping = _MySQL_Ping($MysqlConn)
If $hSQLping = 1 Or $hSQLping = 3 Then
TrayTip('Error', 'Verbindung zur Datenbank konnte nicht hergestellt werden', 10, 3)
Sleep(10000)
Exit
EndIf
#Region ### START Koda GUI section ### Form=
$title = GUICreate($toolname, 386, 322, 192, 124)
$b_login = GUICtrlCreateButton("Login", 264, 256, 113, 25, $WS_GROUP)
$b_buyfull = GUICtrlCreateButton("Vollversion kaufen", 136, 257, 113, 23, $WS_GROUP)
$b_XDXDXDXDXD = GUICtrlCreateButton("XDXDXDXDXD", 8, 256, 113, 25, $WS_GROUP)
$l_headline = GUICtrlCreateLabel($short, 50, 24, 260, 58)
GUICtrlSetFont(-1, 28, 800, 2, "Nightclub BTN")
GUICtrlSetColor(-1, 0xFF0000)
$i_username = GUICtrlCreateInput("", 104, 144, 233, 21)
$i_passwort = GUICtrlCreateInput("", 104, 176, 233, 21, BitOR($ES_PASSWORD,$ES_AUTOHSCROLL))
$l_username = GUICtrlCreateLabel("Username", 40, 144, 52, 17)
$l_password = GUICtrlCreateLabel("Password", 40, 176, 50, 17)
$l_info = GUICtrlCreateLabel("Sie nutzen die", 40, 224, 74, 17)
$l_version = GUICtrlCreateLabel("Testversion", 112, 224, 59, 17)
GUICtrlSetColor(-1, 0xFF0000)
$l_leftinfo = GUICtrlCreateLabel("Verbleibende Zeit:", 16, 296, 90, 17)
$l_timeleft = GUICtrlCreateLabel("(No time)", 112, 296, 45, 17)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
While True
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
_quit()
Case $b_login
if (GUICtrlRead($i_username) = "") Then
MsgBox(0, "Error", "Sie haben keinen Username eingegeben.")
Elseif (GUICtrlRead($i_passwort) = "") Then
MsgBox(0, "Error", "Sie haben kein Passwort eingegeben.")
Else
Local $sReturn = _mysql_checklogin($MysqlConn, GUICtrlRead($i_username))
If GUICtrlRead($i_passwort) == $sReturn Then
MsgBox(0, "Login erfolgreich", "Sie haben sich erfolgreich eingeloggt!")
$version = _mysql_checkversion($MysqlConn, GuiCtrlRead($i_username))
if($version = "V") Then
GUICtrlSetData($l_version, "Vollversion")
GUICtrlSetColor($l_version, 0x32CD32)
EndIf
GUICtrlSetData($l_timeleft, _mysql_checktime($MysqlConn, GuiCtrlRead($i_username)))
Else
MsgBox(0, "Login fehlgeschlagen", "Die eingegebenen Daten sind falsch. Versuchen sie es bitte erneut.")
EndIf
EndIf
Case $b_buyfull
ShellExecute("http://LinkzuderHomepage.de")
EndSwitch
WEnd
Func _mysql_checklogin(Const $MysqlVerbindung, Const $sAccount)
_MySQL_Real_Query($MysqlVerbindung, "SELECT `Password` FROM `"&$dbname&"`.`"&$table&"` WHERE `Account` = '" & $sAccount & "';")
If @error Then
Return SetError(-1, @error, 0)
Else
Local $sResult = _MySQL_Store_Result($MysqlVerbindung)
Local $aReturn = _MySQL_Fetch_Row_StringArray($sResult)
_MySQL_Free_Result($sResult)
If UBound($aReturn) = 0 Then
Return SetError(-2, @error, 0)
Else
Return $aReturn[0]
EndIf
EndIf
EndFunc ;==>_mysql_checklogin
Func _mysql_checkversion(Const $MysqlVerbindung, Const $sAccount)
_MySQL_Real_Query($MysqlVerbindung, "SELECT `VVersion` FROM `"&$dbname&"`.`"&$table&"` WHERE `Account` = '" & $sAccount & "';")
If @error Then
Return SetError(-1, @error, 0)
Else
Local $sResult = _MySQL_Store_Result($MysqlVerbindung)
Local $aReturn = _MySQL_Fetch_Row_StringArray($sResult)
_MySQL_Free_Result($sResult)
If UBound($aReturn) = 0 Then
Return SetError(-2, @error, 0)
Else
Return $aReturn[0]
EndIf
EndIf
EndFunc ;==>_mysql_checkversion
Func _mysql_checktime(Const $MysqlVerbindung, Const $sAccount)
_MySQL_Real_Query($MysqlVerbindung, "SELECT `Time` FROM `"&$dbname&"`.`"&$table&"` WHERE `Account` = '" & $sAccount & "';")
If @error Then
Return SetError(-1, @error, 0)
Else
Local $sResult = _MySQL_Store_Result($MysqlVerbindung)
Local $aReturn = _MySQL_Fetch_Row_StringArray($sResult)
_MySQL_Free_Result($sResult)
If UBound($aReturn) = 0 Then
Return SetError(-2, @error, 0)
Else
Return $aReturn[0]
EndIf
EndIf
EndFunc ;==>_mysql_checktime
Func _mysql_checklast(Const $MysqlVerbindung, Const $sAccount)
_MySQL_Real_Query($MysqlVerbindung, "SELECT `lastcheck` FROM `"&$dbname&"`.`"&$table&"` WHERE `Account` = '" & $sAccount & "';")
If @error Then
Return SetError(-1, @error, 0)
Else
Local $sResult = _MySQL_Store_Result($MysqlVerbindung)
Local $aReturn = _MySQL_Fetch_Row_StringArray($sResult)
_MySQL_Free_Result($sResult)
If UBound($aReturn) = 0 Then
Return SetError(-2, @error, 0)
Else
Return $aReturn[0]
EndIf
EndIf
EndFunc ;==>_mysql_checklast
Func _mysql_checkserial(Const $MysqlVerbindung, Const $sAccount)
_MySQL_Real_Query($MysqlVerbindung, "SELECT `Account` FROM `"&$dbname&"`.`"&$table&"` WHERE `Serial` = '" & $serial & "';")
If @error Then
Return SetError(-1, @error, 0)
Else
Local $sResult = _MySQL_Store_Result($MysqlVerbindung)
Local $aReturn = _MySQL_Fetch_Row_StringArray($sResult)
_MySQL_Free_Result($sResult)
If UBound($aReturn) = 0 Then
Return SetError(-2, @error, 0)
Else
Return $aReturn[0]
EndIf
EndIf
EndFunc ;==>_mysql_checkserial
Func _quit()
_MySQL_Close($MysqlConn)
_MySQL_EndLibrary()
Exit
EndFunc ;==>_quit
Für die Datenbank (Zur Erstellung des Tables):
[autoit]#include <mysql.au3>
[/autoit][autoit][/autoit][autoit]$UserName = "root"
$Password = "root"
$Database = "lolrofl"
$MySQLServerName = "localhost"
$SQLInstance = _MySQLConnect($UserName,$Password,$Database,$MySQLServerName)
[/autoit][autoit][/autoit][autoit]$SQLCode = "CREATE TABLE Tool( Serial VARCHAR (20), Account VARCHAR (30), Password VARCHAR (30), VVersion VARCHAR (1), Time INTEGER, lastcheck VARCHAR(8))"
_Query($SQLInstance, $SQLCode)
_MySQLEnd($SQLInstance)
Und das einfügen der Daten per Script:
[autoit]#include <mysql.au3>
[/autoit][autoit][/autoit][autoit]$UserName = "root"
$Password = "root"
$Database = "lolrofl"
$MySQLServerName = "localhost"
$SQLInstance = _MySQLConnect($UserName,$Password,$Database,$MySQLServerName)
[/autoit][autoit][/autoit][autoit]$SQLCode = "INSERT INTO Tool (Serial, Account, Password, VVersion, Time, lastcheck) VALUES('xasdzuasdgas', 'trick', '1', 'V', '30', '29062010' )"
_Query($SQLInstance, $SQLCode)
_MySQLEnd($SQLInstance)
Bei mir funzt es. Sieh es als Hilfe an und nicht als Lösung, die du nun nimmst. Ist relativ hässlich, aber gut seinen Zweck.