[ Dodano: 2015-11-12, 14:37 ]
wystarczy?o pomy?le? i funkcji klijenta nie dawa? do serwera
serwer....
addEvent("onPlayerTryToLogin",true)
addEventHandler("onPlayerTryToLogin",root,
function(TLlogin, TLhaslo)
outputChatBox(TLlogin .."".. TLhaslo)
end
)
klient....
addEventHandler("onClientGUIClick", zaloguj,
function( )
local TLlogin = guiGetText(Llogin)
local TLhaslo = guiGetText(Lhaslo)
if TLlogin ~= "" and TLhaslo ~= "" then
triggerServerEvent("onPlayerTryToLogin",localPlayer, TLlogin,TLhaslo)
--outputChatBox(guiGetText(Llogin).. " " .. guiGetText(Lhaslo))
end
end
)
EMILOS123, nie. A i mam pytanie jak przez xampp daje baz? to jaki login i haslo?
[ Dodano: 2015-11-12, 17:50 ]
local db = dbConnect("mysql","host=localhost;dbname=logowanie","root","")
addEvent("onPlayerTryToLogin",true)
addEventHandler("onPlayerTryToLogin",root,
function(TLlogin, TLhaslo)
local q = dbQuery(db, "SELECT * FROM 'pl-logowanie' WHERE 'l_name' = ? LIMIT 1",TLlogin)
local result, rows, last_id = dbPoll(q,-1)
if result then
if rows == 1 then
outputChatBox(result[1].l_haslo)
else
outputChatBox("Nie znaleziono konta!")
end
elseif result == false then
outputConsole( "dbPoll failed. Error code:" .. tostring(rows) .. "Error message: " ..tostring(error_msg) )
end
end
)--outputChatBox(TLlogin .." ".. TLhaslo) --test
W zapytaniach, nazwy tabeli i nazwy kolumn nie dajesz w apostrofie ( ' ), tylko ` < ten znaczek pod ESC, czyli zamiast:
"SELECT * FROM 'pl-logowanie' WHERE 'l_name' = ? LIMIT 1"
powinno by?
"SELECT * FROM `pl-logowanie` WHERE `l_name` = ? LIMIT 1"
My?l?, ?e te znaki s? raczej zb?dne, chyba ?e kto? lubi estetyczny kod.
Osobi?cie stosuje poni?szy typ zapyta? i nie ma jakiegokolwiek problemu z zabezpieczeniami itd.
SELECT * FROM tabela WHERE kolumna=? LIMIT 1;
A co do apostrof, to te znaki powinno si? u?ywa? tylko, je?eli chcemy wys?a? ?a?cuch znak?w tutaj zwany string.
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