- 0
Problema admin mysql
-
Similar Content
-
- 2 replies
- 207 views
-
Problema turf
By Soryn.,
- 2 answers
- 222 views
-
- 1 reply
- 177 views
-
Problema
By ImJustSlim,
- 3 answers
- 284 views
-
- 2 replies
- 157 views
-
-
Recently Browsing 0 members
- No registered users viewing this page.
Question
WiDuAlK
Problemă întâlnită (descriere): Salutare , miam facut un register/ login mysql , si iam facut adminul , dar are o probelama , pot folosi comenzile , chiar daca nu am admin. Am pus si o comanda de /makeadmin , folosindu-ma de rcon , iar ea nu are problema(nu despre asta e vorba).Imi dau admin level 0 cu rconul , iar comenzile nu imi mai merg , intru din nou pe server si pot folosi comenzile de admin.
L-am refacut , dar din nou aceeasi problema , din aceasta cauza am venit la voi cei de pe sa-mp.ro sa va cer ajutorul.Nu imi sta in fire , dar vas ruga si ma ajutati sa imi fac Admin pe mysql sistem , adica sa mil construiti voi , daca va pricepeti , iar eu voi vedea ce am gresit si ce trebuie remediat.(NU IMI STA IN FIRE SA CER MOTAMO , dar alta solutie nu am gasit :|)
Ero(area / rile) / warning-(ul / urile): -
Liniile de cod / sursa / script-ul:[pawn]// *** Include's
#include < a_samp >
#include < a_mysql >
#include < sscanf2 >
#include < streamer >
// *** Define's
// Mysql Defines
#define mysql_host "localhost"
#define mysql_username "root"
#define mysql_database "flash_db"
#define mysql_password ""
//---------------------------------
#define ShowDialog ShowPlayerDialog
#define SCM SendClientMessage
// Colors
#define NOS1 "{6EF83C}"
#define NOS2 "{F81414}"
#define NOS3 "{6EF83C}"
#define C_GREY 0xAFAFAFAA
//----------------------------------------
#define Function::%0(%1)
forward%0(%1 ) ;
public%0(%1)
stock bool:False = false;
#define SCMF(%0,%1,%2,%3)
do{
gString[ 0 ] = EOS ;
format( gString, 256, (%2), %3 ) ;
SendClientMessage( (%0),(%1), gString ) ;
}
while( False )
// *** New's & Enum's
enum
{
REGISTER_DIALOG ,
AGE_DIALOG ,
SEX_DIALOG ,
SPAWN_DIALOG ,
EMAIL_DIALOG ,
LOGIN_DIALOG
}
enum PlayerData
{
ID ,
Money ,
Age ,
Sex ,
Origine ,
FLogin
}
new aHandle = -1 ,
P_DATA[ MAX_PLAYERS ][ PlayerData ] ,
bool:Logged[ MAX_PLAYERS ] ,
gQuery[ 2000 ] ,
gString[ 2000 ] ;
main()
{
print(" BlackFlash") ;
}
public OnGameModeInit()
{
// Mysql conection
aHandle = mysql_connect( mysql_host , mysql_username , mysql_database , mysql_password ) ;
if ( aHandle && mysql_errno( aHandle ) == 0 ) printf( "Conexiunea la baza de date `%s` a avut succes !" , mysql_database ) ;
else printf( "Conexiunea la baza de date `%s` nu a avut succes ! " , mysql_database ) ,
mysql_reconnect( aHandle ) ;
mysql_log( LOG_ALL , LOG_TYPE_HTML ) ;
SetTimer( "SavePlayerData", 900000, true ) ;// odata la 15 minute se salveaza conturile
//------------------------------------------------------------------------------
SetGameModeText( "Romania:Stunt|Drift|Race|Fun|Freerom" ) ;
AddPlayerClass( 0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0 ) ;
return ( true ) ;
}
public OnGameModeExit()
{
mysql_close( aHandle ) ;
return ( true ) ;
}
public OnPlayerRequestClass(playerid, classid)
{
SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);
SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);
return ( true ) ;
}
public OnPlayerConnect(playerid)
{
gQuery[ 0 ] = EOS ;
mysql_format( aHandle, gQuery, sizeof( gQuery ) , "SELECT `Name` FROM `Users` WHERE `Name`='%e' LIMIT 1;" , GetName( playerid ) ) ;
mysql_tquery( aHandle, gQuery, "AccountLoad", "d", playerid ) ;
return ( true ) ;
}
public OnPlayerDisconnect(playerid, reason)
{
SavePlayerData( playerid ) ;
return ( true ) ;
}
public OnPlayerSpawn(playerid)
{
switch( P_DATA[ playerid ][ Sex ] )
{
case 0: SetPlayerSkin( playerid, 250 ) ;
case 1: SetPlayerSkin( playerid, 193 ) ;
}
switch( P_DATA[ playerid ][ Origine ] )
{
case 0: SetPlayerPos(playerid, 1742.9990,-1862.0558,13.5768);
case 1: SetPlayerPos(playerid, -2424.7073,337.2923,37.0299);
}
}
public OnPlayerDeath(playerid, killerid, reason)
{
return ( true ) ;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
switch( dialogid )
{
case REGISTER_DIALOG:
{
gString[ 0 ] = EOS ,
gQuery[ 0 ] = EOS ;
format( gString, sizeof( gString ), "{FFFFFF}Bun venit {F3FF02}%s!nn
{FFFFFF}Te rugam sa te {F81414}inregistrezi {FFFFFF}ca sa iti poti salva datele din joc({6EF83C}coins,{6EF83C}score,{6EF83C}kills,{6EF83C}deaths{FFFFFF},etc...).n" , GetName( playerid ) ) ;
if ( !response )
return Kick( playerid ) ;
new pPassword[ 45 ] ;
if ( sscanf( inputtext, "s[45]", pPassword ) )
return ShowDialog( playerid, REGISTER_DIALOG, DIALOG_STYLE_PASSWORD, "{FF0000}#1 {FFFFFF}Inregistrare", gString, "(Inregistrare)", "(Kick)" ) ;
if ( strlen( pPassword ) < 6 || strlen( pPassword ) > 45 )
return ShowDialog( playerid, REGISTER_DIALOG, DIALOG_STYLE_PASSWORD, "{FF0000}#1 {FFFFFF}Inregistrare", gString, "(Inregistrare)", "(Kick)" ) ;
mysql_format( aHandle, gQuery, sizeof( gQuery ), "INSERT INTO `Users` (`Name`,`Password`,`Money`) VALUES('%e','%e',0)", GetName( playerid ), pPassword ) ;
mysql_tquery( aHandle, gQuery, "", "" ) ;
ShowDialog( playerid, AGE_DIALOG, DIALOG_STYLE_INPUT, "{FFF1AF}5. {FFFFFF}Varsta", "{FFFFFF}Acum te rugam sa scri cati ani ai !", "Register", "" ) ;
}
case AGE_DIALOG:
{
new Varsta[ 55 ];
if ( sscanf( inputtext, "s[55]", Varsta ) )
return ShowPlayerDialog( playerid, AGE_DIALOG, DIALOG_STYLE_INPUT, "{FFF1AF}5. {FFFFFF}Varsta", "{FFFFFF}Acum te rugam sa scri cati ani ai !", "Register", "" ) ;
if ( strlen( Varsta ) < 1 || strlen( Varsta ) > 2 )
return ShowPlayerDialog( playerid, AGE_DIALOG, DIALOG_STYLE_INPUT, "{FFF1AF}5. {FFFFFF}Varsta", "{FFFFFF}Acum te rugam sa scri cati ani ai !", "Register", "" ) ;
if ( !IsNumeric( inputtext ) )
return ShowPlayerDialog( playerid, AGE_DIALOG, DIALOG_STYLE_INPUT, "{FFF1AF}5. {FFFFFF}Varsta", "{FFFFFF}Acum te rugam sa scri cati ani ai !", "Register", "" ) ;
P_DATA[ playerid ][ Age ] = strval( inputtext );
format( gQuery, sizeof gQuery, "UPDATE `Users` SET `Age`='%d' WHERE `Name`='%s'", strval( inputtext ), GetName( playerid ) ) ;
mysql_tquery( aHandle, gQuery, "", "" ) ;
SCMF( playerid, -1, "Deci ai %d ani .", strval( inputtext ) ) ;
SetTimerEx( "Spawn", 1, false, "i", playerid ) ;
mysql_tquery( aHandle, "SELECT * FROM `Users`", "OnPlayerRegister" , "d" , playerid ) ;
ShowDialog( playerid, SEX_DIALOG, DIALOG_STYLE_LIST, "{FFF1AF}4. Sex:", "MasculinnFeminin", "(Select)", "" ) ;
}
case SEX_DIALOG:
{
if(!response)
return Kick(playerid);
switch( listitem )
{
case 0:
{
P_DATA[ playerid ][ Sex ] = 0 ;
SCM(playerid,-1,"Bun , deci esti baiat!");
ShowPlayerDialog(playerid, SPAWN_DIALOG, DIALOG_STYLE_INPUT, "Unde vrei sa te spawnezi?", "LosSantosnSan Fierro", "OK", "Cancel");
}
case 1:
{
P_DATA[ playerid ][ Sex ] = 1 ;
SCM(playerid,-1,"Bun , deci esti fata!");
ShowPlayerDialog(playerid, SPAWN_DIALOG, DIALOG_STYLE_INPUT, "Unde vrei sa te spawnezi?", "LosSantosnSan Fierro", "OK", "Cancel");
}
}
}
case SPAWN_DIALOG:
{
if(!response)
return Kick(playerid);
switch( listitem )
{
case 0:
{
P_DATA[ playerid ][ Origine ] = 0 ;
ShowPlayerDialog(playerid, EMAIL_DIALOG, DIALOG_STYLE_INPUT, "Inregistrare", "Ce email ai?", "OK", "Cancel");
}
case 1:
{
P_DATA[ playerid ][ Origine ] = 1 ;
ShowPlayerDialog(playerid, EMAIL_DIALOG, DIALOG_STYLE_INPUT, "Inregistrare", "Ce email ai?", "OK", "Cancel");
}
}
}
case LOGIN_DIALOG:
{
if ( !response )
return Kick( playerid ) ;
mysql_format( aHandle, gQuery, sizeof( gQuery ), "SELECT * FROM `Users` WHERE `Name`='%s' AND `Password`='%e'", GetName( playerid ), inputtext ) ;
mysql_tquery( aHandle, gQuery, "Load_Player_Data", "d", playerid ) ;
}
}
return ( true ) ;
}
// Mysql Function's
Function:: AccountLoad( playerid )
{
gString[ 0 ] = EOS ;
new Rows, Fields;
cache_get_data( Rows, Fields, aHandle ) ;
if ( Rows )
{
format( gString, sizeof( gString ), "{FFFFFF}Bun venit inapoi {F3FF02}%s!nn
{FFFFFF}Te rugam sa te {F81414}autentifici {FFFFFF}cu parola cu care te-ai {F81414}inregistrat{FFFFFF}!n{F81414}Autentificarea {FFFFFF}este necesara pentru ca sa iti primesti datele in joc({6EF83C}coins,{6EF83C}score,{6EF83C}kills,{6EF83C}deaths{FFFFFF},etc...)." , GetName( playerid ) ) ;
ShowDialog( playerid, LOGIN_DIALOG, DIALOG_STYLE_PASSWORD, ""NOS1"N"NOS2"o"NOS3"S:{C3C3C3}Logare", gString, "(Login)", "(Cancel)" ) ;
}
else
{
format( gString, sizeof( gString ), "{FFFFFF}Bun venit {F3FF02}%s!nn
{FFFFFF}Te rugam sa te {F81414}inregistrezi {FFFFFF}ca sa iti poti salva datele din joc({6EF83C}coins,{6EF83C}score,{6EF83C}kills,{6EF83C}deaths{FFFFFF},etc...).n" , GetName( playerid ) ) ;
ShowDialog( playerid, REGISTER_DIALOG, DIALOG_STYLE_PASSWORD, "{FF0000}#1 {FFFFFF}Inregistrare", gString, "(Inregistrare)", "(Kick)" ) ;
}
return ( true ) ;
}
Function:: Load_Player_Data( playerid )
{
gString[ 0 ] = EOS ;
new Rows, Fields;
cache_get_data( Rows, Fields, aHandle ) ;
if ( !Rows )
{
P_DATA[ playerid ][ FLogin ] ++;
if ( P_DATA[ playerid ][ FLogin ] == 3 )
{
P_DATA[ playerid ][ FLogin ] = 0;
format( gString, sizeof gString, "Account: %s a primit kick, Motiv: Parola gresita de 3 ori !", GetName( playerid ) ) ;
SendClientMessageToAll( C_GREY, gString ) ;
return Kick( playerid ) ;
}
format( gString, sizeof gString, "{F81414}Ai gresit parola !n{FFAF00}Incercari ramase: {F81414}%d/3n
{FFFFFF}Te rugam sa te autentifici cu parola cu care te-ai inregistrat !n", P_DATA[ playerid ][ FLogin ] ) ;
ShowDialog( playerid, LOGIN_DIALOG, DIALOG_STYLE_PASSWORD, "{F81414}Parola gresita!", gString, "(Login)", "(Kick)" ) ;
}
else
{
mysql_format( aHandle, gQuery, sizeof( gQuery ), "SELECT * FROM `Users` WHERE `Name`='%e'", GetName( playerid ) ) ;
mysql_tquery( aHandle, gQuery, "OnPlayerLogin", "d", playerid ) ;
}
return ( true ) ;
}
Function:: OnPlayerLogin( playerid )
{
gString[ 0 ] = EOS ;
gQuery[ 0 ] = EOS ;
P_DATA[ playerid ][ ID ] = cache_get_field_content_int( 0, "ID", aHandle ) ;
P_DATA[ playerid ][ Money ] = cache_get_field_content_int( 0, "Money", aHandle ) ;
ResetPlayerMoney( playerid ) ;
GivePlayerMoney( playerid, cache_get_field_content_int( 0, "Money", aHandle ) ) ;
SCM( playerid, -1, ""NOS2"Te-ai logat cu succes!" ) ;
TogglePlayerSpectating( playerid, 0 ) ;
Logged[ playerid ] = true;
return ( true ) ;
}
Function:: SavePlayerData( playerid )
{
if ( Logged[ playerid ] == false )
return Kick( playerid ) ;
gQuery[ 0 ] = EOS;
P_DATA[ playerid ][ Money ] = GetPlayerMoney( playerid ) ;
mysql_format( aHandle, gQuery, sizeof( gQuery ), "UPDATE `Users` SET `Money`='%d' WHERE `Name`='%s'",
P_DATA[ playerid ][ Money ] ,
GetName( playerid ) ) ;
mysql_tquery( aHandle, gQuery, "", "" ) ;
return ( true ) ;
}
stock GetName( playerid )
{
new WiDuAlKBarosanu[ 24 ];
GetPlayerName( playerid, WiDuAlKBarosanu, sizeof( WiDuAlKBarosanu ) ) ;
return ( WiDuAlKBarosanu ) ;
}
IsNumeric( text[ ] )
{
for( new i = 0, r = strlen( text ) ; i < r; i++ )
{
if ( text[ i ] > '9' || text[ i ] < '0')
return ( 0 ) ;
}
return ( 1 ) ;
}
[/pawn]
Imagini / Video (optional): -
Aţi încercat să rezolvaţi singur?:Cu siguranta
Mie putina rusine , ca am venit ca un milog , dar alta solutie nu am gasit , dupa ce am incercat sa refac sistemul si nu am reusit , mam gandit sa va dau doar register/loginul , iar voi imi veti putea spune exact ce trebuie pus , fara a va incurca(asa cum am facut eu)...
@WiDuAlK Tutorial`s:
PAWN pentru SA:MP in Notepad++
Tutorial Register-Login MYSQL R39
Tutorial etape de register
Cum sa creezi un PayDay (2 METODE)
Cum sa creezi o factiune de la 0 PART 1
Cum sa creezi o factiune de la 0 PART 2
Cum sa creezi o factiune de la 0 partea a 3-a (ULTIMA)
Functii folositoare din NEW.PWN
Tutorial Engine Vehicle
Optimizare simplitate si stil
Foreach inlocuieste loop-ul
SSCANF si ZCMD
Cum sa creezi o poarta miscatoare
Tutorial cum sa creezi un radio pe server si cum sa iti creezi melodi pentru ascultat pe server
Cum sa tii un server din PC folosind HAMACHI
Documentatie* Despre hack-uri
Servicii:
Servicii Scripting & Mapping
Produse:
Farmer Job Realistic
Drugs Dealer System [SA-MP] UNIQUE
Link to comment
Share on other sites
4 answers to this question
Recommended Posts