Zaloguj się by uzyskać pełen dostęp. Nie masz jeszcze konta? Założ je już teraz w kilka sekund.

Wysłany: 2017-11-01, 13:51


MixTape







Wiek: 27
Na forum: 5477 dni
Posty: 28
Nick w MP: MixTape

Piwa: 1

Respekt: 57,6

Ostrzeżeń: 20%
Hej! Chcia?bym z bazy danych 'wyci?gn??' nick gracza, aby potem go por?wna? i pod dane nicki(zdefiniowane przeze mnie) podpisa? funkcje. Zrobi?em co? takiego, ale nie dzia?a.

Kod:


function greeting7Handler ()
local localPlayerName = mysql_query(handler,"SELECT * FROM users WHERE username = ? ",username)
local wynik = mysql_fetch_assoc(localPlayerName)
if wynik == "samel" then
addPedClothes ( source, "capzip", "cap", 16 )
outputChatBox("jestes wysmienity", source, 27, 89, 224, true)
elseif localPlayerName == "Samel12" then
addPedClothes ( source, "capzip", "cap", 16 )
outputChatBox(" dsdasd", source, 27, 89, 224, true)
else
outputChatBox(" nie jestes wysmienity!!1!1!!", source, 27, 89, 224, true)
end
end
addEvent( "onGreeting7", true )
addEventHandler( "onGreeting7", getRootElement(), greeting7Handler )


Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-11-01, 14:53


Eitho







Wiek: 24
Na forum: 3489 dni
Posty: 330
Nick w MP: Eitho

Piwa: 746

Respekt: 256,5
Respekt: 256,5Respekt: 256,5Respekt: 256,5


Więcej informacji znajdziesz w Wikipedii MTA:

dbQuery

mysql_query nie jest ju? wspierane

Podpis
good old days :]
Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-11-01, 18:32


MixTape







Wiek: 27
Na forum: 5477 dni
Posty: 28
Nick w MP: MixTape

Piwa: 1

Respekt: 57,6

Ostrzeżeń: 20%
Po zmianie na
Kod:


function greeting7Handler ()
local check = exports.mysql:_QuerySingle("select * from users where username = ? ",username)
if check == "samel" then
addPedClothes ( source, "capzip", "cap", 16 )
outputChatBox("jestes wysmienity", source, 27, 89, 224, true)
elseif localPlayerName == "Samel12" then
addPedClothes ( source, "capzip", "cap", 16 )
outputChatBox(" dsdasd", source, 27, 89, 224, true)
else
outputChatBox(" nie jestes wysmienity!!1!1!!", source, 27, 89, 224, true)
end
end
addEvent( "onGreeting7", true )
addEventHandler( "onGreeting7", getRootElement(), greeting7Handler )


Gdy jestem zalogowany na 'samel' to wyrzuca, ze nie jestem wysmienity (czyli nie czyta tego, ze samel).

U?y?em tego kodu poni?ej na podstawie systemu logowania, z kt?rego chc? wyci?gn?? dane(nick) (umieszczam ni?ej fragment)
Kod:


exports.mysql:_QuerySingle("select * from users where username = ? ",username)



Kod z systemu logowania:

Kod:


function _Query( ... )
if connection then
local query = dbQuery(connection, ... )
local result = dbPoll(query,-1)
return result
else
return false
end
end

function _QuerySingle(str,...)
if connection then
local result = _Query(str,...)
if type(result) == 'table' then
return result[1]
end
else
return false
end
end

function _Exec(str,...)
if connection then
local query = dbExec(connection,str,...)
return query
else
return false
end
end


Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-11-01, 19:00


Eitho







Wiek: 24
Na forum: 3489 dni
Posty: 330
Nick w MP: Eitho

Piwa: 746

Respekt: 256,5
Respekt: 256,5Respekt: 256,5Respekt: 256,5

Jak wywo?ujesz ten event?

[ Dodano: 2017-11-01, 19:03 ]
?eby wyci?gn?? nick, musisz co? poda?. Co podajesz? Uid, serial, has?o?

Podpis
good old days :]
Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-11-01, 19:47


MixTape







Wiek: 27
Na forum: 5477 dni
Posty: 28
Nick w MP: MixTape

Piwa: 1

Respekt: 57,6

Ostrzeżeń: 20%
Ma?o rozumiem z tego co napisa?e?, ale raczej nic nie podaje - bo gdzie?
Chcia?bym zrobi? co? w stylu, jak ten kod poni?ej, gdy z wbudowanego systemu rejestracji (tego w mta) korzysta?em i na podstawie nicku przydziela?em.

Kod:



function greeting7Handler ()
local localPlayerName = getAccountName(getPlayerAccount(client))
if localPlayerName == "Samel" then
addPedClothes ( source, "capzip", "cap", 16 )
outputChatBox("jestes wysmienity", source, 27, 89, 224, true)
elseif localPlayerName == "Samel12" then
addPedClothes ( source, "capzip", "cap", 16 )
outputChatBox(" dsdasd", source, 27, 89, 224, true)
else
outputChatBox(" nie jestes wysmienity!!1!1!!", source, 27, 89, 224, true)
end
end
addEvent( "onGreeting7", true )
addEventHandler( "onGreeting7", getRootElement(), greeting7Handler )


Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-11-01, 20:29


Eitho







Wiek: 24
Na forum: 3489 dni
Posty: 330
Nick w MP: Eitho

Piwa: 746

Respekt: 256,5
Respekt: 256,5Respekt: 256,5Respekt: 256,5

1. "Hej! Chcia?bym z bazy danych 'wyci?gn??' nick gracza, aby potem go por?wna? i pod dane nicki(zdefiniowane przeze mnie) podpisa? funkcje. Zrobi?em co? takiego, ale nie dzia?a. "
Okej, wyci?gn?? mo?esz, ale jak nie podasz czego? to ci wyci?gnie pierwszy nick z bazy danych.
2. Nie rozumiem, o co chodzi z wyci?ganiem nicku z bazy danych xd

Nie wiem o co ci chodzi, dlatego nie mam jak za bardzo ci pom?c xd

Podpis
good old days :]
Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-11-01, 22:41


MixTape







Wiek: 27
Na forum: 5477 dni
Posty: 28
Nick w MP: MixTape

Piwa: 1

Respekt: 57,6

Ostrzeżeń: 20%
No masz racje, nie za bardzo to opisa?em.

Chodzi o fakt taki.
Mam pewien skrypt pod przebieranie si?, kt?ry okre?lonym nickom pozwala si? przebra? w dany ciuch po klikni?ciu w obrazek z gui.

Jest to:

Kod:


function greeting7Handler ()
local localPlayerName = getAccountName(getPlayerAccount(client))
if localPlayerName == "Samel" then
addPedClothes ( source, "capzip", "cap", 16 )
outputChatBox("jestes wysmienity", source, 27, 89, 224, true)
elseif localPlayerName == "Samel12" then
addPedClothes ( source, "capzip", "cap", 16 )
outputChatBox(" dsdasd", source, 27, 89, 224, true)
else
outputChatBox(" nie jestes wysmienity!!1!1!!", source, 27, 89, 224, true)
end
end
addEvent( "onGreeting7", true )
addEventHandler( "onGreeting7", getRootElement(), greeting7Handler )



Wrzuci?em na server skrypt rejestracji/logowania MTA oparty o MYSQL i w tym momencie ten kod podany wy?ej jest do niczego, poniewa?
Kod:


local localPlayerName = getAccountName(getPlayerAccount(client))
if localPlayerName == "Samel" then

Nie definiuje gracza(nie oddaje jego loginu), gdy? ten domy?lnie nie jest zalogowany na konto ze skryptu wbudowanego w server MTA a w ten odr?bny oparty o MYSQL.
Tutaj zaczyna si? zabawa poniewa? chcia?bym wr?ci? do u?ytelno?ci skryptu i oprze? go o loginy z MYSQL'a.

Je?eli login ==- samel to wtedy wywo?uje si? funkcja, ale nie wiem jak do tego dotrze?.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-11-01, 22:51


Eitho







Wiek: 24
Na forum: 3489 dni
Posty: 330
Nick w MP: Eitho

Piwa: 746

Respekt: 256,5
Respekt: 256,5Respekt: 256,5Respekt: 256,5

prawdopodobnie, skoro masz oparte na mysql, to zapisuje login jako elementdat? (co prawda uid lepsze)
wrzu? to sobie do jakiego? skryptu po stronie serwera i napisz jak? masz elementdat? na login





[ Dodano: 2017-11-01, 22:54 ]
i wtedy kod b?dzie mniej wi?cej tak wygl?da?
function greeting7Handler () 
    local localPlayerName getElementData(source'twojadata')
    if not localPlayerName then return end
    if localPlayerName == "Samel" then 
        addPedClothes source"capzip""cap"16 ) 
        outputChatBox("jestes wysmienity"source2789224true) 
    elseif localPlayerName == "Samel12" then 
        addPedClothes source"capzip""cap"16 ) 
        outputChatBox(" dsdasd"source2789224true) 
    else 
        outputChatBox(" nie jestes wysmienity!!1!1!!"source2789224true) 
    end 
end 
addEvent"onGreeting7"true addEventHandler"onGreeting7"getRootElement(), greeting7Handler 


[ Dodano: 2017-11-01, 22:54 ]
aczkolwiek ja bym proponowa? na uid, bo nick zawsze mo?na zmieni?

[ Dodano: 2017-11-01, 22:57 ]
najlepiej to poka? struktur? bazy danych (screenshot z phpmyadmin), mo?e co? innego b?dzie si? da?o ogarn?? xd

Podpis
good old days :]
Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-11-02, 18:44


MixTape







Wiek: 27
Na forum: 5477 dni
Posty: 28
Nick w MP: MixTape

Piwa: 1

Respekt: 57,6

Ostrzeżeń: 20%
Z elemdata wysz?o co? takiego w konsoli, tak?e chyba co? nie ten teges.

Kod:


player:onSpawn: true
player:minimized: false
player:spawned: true
shader: false
player:mainMenuActive: false
player:id: 0



Je?eli chodzi o baze danych:

http://prntscr.com/h5dybp
Osobi?cie nie wiem jak zakrywa? has?o, bo bazuj? na skrypcie z poradnika z YT.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-11-05, 11:24


Eitho







Wiek: 24
Na forum: 3489 dni
Posty: 330
Nick w MP: Eitho

Piwa: 746

Respekt: 256,5
Respekt: 256,5Respekt: 256,5Respekt: 256,5

Og?lnie to nie masz co? powalone z nadawaniem id, bo nie powiniene? mie? 0

Je?li naprawisz nadawanie id, to to powinno dzia?a?
function greeting7Handler () 
    local query exports["mysql"]:_Query("SELECT * FROM users WHERE id=?"getElementData(source'player:id'))
    if not query then return end
    local localPlayerName query[1].username
    if localPlayerName == "Samel" then 
        addPedClothes source"capzip""cap"16 ) 
        outputChatBox("jestes wysmienity"source2789224true) 
    elseif localPlayerName == "Samel12" then 
        addPedClothes source"capzip""cap"16 ) 
        outputChatBox(" dsdasd"source2789224true) 
    else 
        outputChatBox(" nie jestes wysmienity!!1!1!!"source2789224true) 
    end 
end 
addEvent"onGreeting7"true addEventHandler"onGreeting7"getRootElement(), greeting7Handler 


Podpis
good old days :]
Postaw piwo autorowi tego posta
 

 
Tagi: eksportowanie :: bazy :: mysql
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » LUA Ten temat jest zablokowany bez możliwości zmiany postów lub pisania odpowiedzi

Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Dodaj temat do Ulubionych
Wersja do druku