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

Wysłany: 2013-09-26, 16:36


vipSEBOvip

A poor begginer






Wiek: 26
Na forum: 5178 dni
Posty: 597
Nick w MP: xSebaPL

Piwa: 77

Respekt: 140
Respekt: 140

Witajcie, mam pewien problem, kt?ry ju? nie raz napotka?em, ale dalej go naprawi? nie potrafi?. Ot?? mysql_query nie zwraca resulta:
local isKonto mysql_query(SQL"SELECT * FROM Konto WHERE Login='" .. login .. "'")
if (mysql_num_rows(isKonto) > 0then


W mysql_num_rows wyskakuje ?e mysqlResult expected, got nil.

Ostatnio zmieniony przez vipSEBOvip 2013-09-26, 17:57, w całości zmieniany 1 raz  
Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-09-26, 17:50


Tostuch







Wiek: 27
Na forum: 4931 dni
Posty: 483
Nick w MP: Tost

Piwa: 137

Respekt: 110
Respekt: 110

Nie specjalizuje si? w mysql ale mo?e zamie? isKonto na jestKonto?

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-09-27, 10:07


Piorun







Wiek: 32
Na forum: 6712 dni
Posty: 1837
Nick w MP: Piorun

Piwa: 516

Respekt: 480,7
Respekt: 480,7

Tostuch, nie, to nic nie zmieni.

Poka? co masz pod zmienn? "SQL" ?

Podpis
Możesz mnie znaleźć na: Facebook
Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-09-28, 12:42


vipSEBOvip

A poor begginer






Wiek: 26
Na forum: 5178 dni
Posty: 597
Nick w MP: xSebaPL

Piwa: 77

Respekt: 140
Respekt: 140

Z po??czeniem jest wszystko ok, zrobi?em tak:
function zarejestruj(loginpassword)
    outputDebugString("SQL zwraca " .. tostring(SQL))
    local isKonto mysql_query(SQL"SELECT * FROM Konto WHERE Login='" .. login .. "'")
    
    if (isKontothen
        if (mysql_num_rows(isKonto) > 0then
            triggerClientEvent(source"onClientUtworz"getRootElement(), false"Jest ju? takie konto w bazie danych.")
            return
        end
    
        local dodajKonto mysql_query(SQL"INSERT INTO Konto SET Login='" .. login .. "' and Haslo='" .. password .. "'")
        triggerClientEvent(source"onClientUtworz"getRootElement(), true)
    else
        outputDebugString("isKonto zwraca " .. tostring(isKonto))
    end
end
addEvent("onZarejestruj"true)
addEventHandler("onZarejestruj"getRootElement(), zarejestruj)


i zwraca
INFO: SQL zwraca MySQL handler (#20)
INFO: isKonto zwraca nil


Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-09-28, 13:25


Piorun







Wiek: 32
Na forum: 6712 dni
Posty: 1837
Nick w MP: Piorun

Piwa: 516

Respekt: 480,7
Respekt: 480,7

Takie co?:
outputDebugString("mysql_query failed: (" .. mysql_errno(isKonto) .. ") " .. mysql_error(isKonto))

wklej w miejscu
Cytat:

outputDebugString("isKonto zwraca"..tostring(isKonto))


Po prostu to zamie?, zrestartuj kod i wy?wietl co ci wyskoczy?o w Debugu. Druga sprawa - sprawd? czy przypadkiem zmienne login i password zawieraj? to czego oczekujesz (gdzie? tam na pocz?tku dodaj output'a jakiego? by sprawdzi?). Sprawd? czy kolumna "Login" istnieje w bazie. By? mo?e jest napisana z ma?ej litery i powstaje bajzel.

Podpis
Możesz mnie znaleźć na: Facebook
Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-09-28, 20:06


vipSEBOvip

A poor begginer






Wiek: 26
Na forum: 5178 dni
Posty: 597
Nick w MP: xSebaPL

Piwa: 77

Respekt: 140
Respekt: 140

Login i has?o s? poprawne, ale:

ERROR: CHT-PanelLogowania/s_panellogowania.lua:50: bad argument #1 to 'mysql_errno' (mysqlHandler expected, got nil)

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-09-28, 23:44


Piorun







Wiek: 32
Na forum: 6712 dni
Posty: 1837
Nick w MP: Piorun

Piwa: 516

Respekt: 480,7
Respekt: 480,7

No tak, moja pami?? czasami zawodzi. Zamiast "isKonto" wklej "SQL". Z?y kod Ci poda?em dlatego nie wy?wietli? b??d?w z bazy lecz ze skryptu.

Podpis
Możesz mnie znaleźć na: Facebook
Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-09-29, 13:48


vipSEBOvip

A poor begginer






Wiek: 26
Na forum: 5178 dni
Posty: 597
Nick w MP: xSebaPL

Piwa: 77

Respekt: 140
Respekt: 140

Ok, jest taki b??d:

mysql_query failed: (1146) Table 'db_3630.Konto' doesn't exist

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-09-29, 15:37


Piorun







Wiek: 32
Na forum: 6712 dni
Posty: 1837
Nick w MP: Piorun

Piwa: 516

Respekt: 480,7
Respekt: 480,7

Nie ma tabeli "Konto" w bazie. Mo?e napisana jest z ma?ej litery?

Podpis
Możesz mnie znaleźć na: Facebook
Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-09-29, 18:44


vipSEBOvip

A poor begginer






Wiek: 26
Na forum: 5178 dni
Posty: 597
Nick w MP: xSebaPL

Piwa: 77

Respekt: 140
Respekt: 140

Oks, to ju? zrobione.

Ale dlaczego ten kod:
mysql:query("INSERT INTO Konto SET Login='" .. login .. "' and Haslo='" .. password .. "'")

ustawia Login='0' i Haslo=' ' ?

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-09-30, 14:17


Riot

3X






Wiek: 29
Na forum: 5729 dni
Posty: 1123
Nick w MP: Riot/3X

Piwa: 286

Respekt: 123
Respekt: 123

Spr?buj AND zamiast and ;)

btw. korzystaj z kodowania i fajnie by?oby u?y? mysql_escape_string ;)

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-09-30, 17:01


vipSEBOvip

A poor begginer






Wiek: 26
Na forum: 5178 dni
Posty: 597
Nick w MP: xSebaPL

Piwa: 77

Respekt: 140
Respekt: 140

Ziomek11 napisał/a:

btw. korzystaj z kodowania


Pami?tam o kodowaniu ale najpierw chcia?em sprawdzi? czy kod dzia?a prawid?owo.

Ziomek11 napisał/a:

mysql_escape_string


A do czego to s?u?y ? ;)

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-09-30, 17:54


Riot

3X






Wiek: 29
Na forum: 5729 dni
Posty: 1123
Nick w MP: Riot/3X

Piwa: 286

Respekt: 123
Respekt: 123

Funkcja dodaje znaki do zapyta?. Tak na prawd?, kto? poinformowany m?g?by w banalny spos?b rozwali? Ci baz? danych za pomoc? ataku SQL Injection. TAK! Ma?o kto nawet o tym wie...;)

Cytat:

Escapes a query string to avoid sql injection attacks. This function should be used for every executed query that uses any data given by the players.


Warto doda? gdy do bazy dajesz jakie? dane od gracza - przyk?adowo takie logowanie ;)

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-09-30, 20:18


vipSEBOvip

A poor begginer






Wiek: 26
Na forum: 5178 dni
Posty: 597
Nick w MP: xSebaPL

Piwa: 77

Respekt: 140
Respekt: 140

Zamiana and na AND nic nie da?a. Dalej pokazuje si? '0' i ' '

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-10-01, 16:06


Brzysiek

Skrypter pralek






Wiek: 27
Na forum: 5198 dni
Posty: 488
Nick w MP: Brzysiek

Piwa: 1034

Respekt: 360
Respekt: 360Respekt: 360Respekt: 360Respekt: 360

Jakie dane wysy?asz do tego triggera ze strony clienta? Poka? je.

Postaw piwo autorowi tego posta
 

 
Tagi: mysql_query :: nie :: zwraca :: resulta
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