mariadb get row count: Difference between revisions
From Onset Developer Wiki
No edit summary |
No edit summary |
||
Line 12: | Line 12: | ||
== Example == | == Example == | ||
Example taken from: https://github.com/BlueMountainsIO/OnsetLuaScripts/blob/master/horizon/server/accounts.lua | |||
<syntaxhighlight lang="Lua"> | |||
function CheckForIPBan(player) | |||
local query = mariadb_prepare(sql, "SELECT ipbans.reason, accounts.steam_name FROM ipbans LEFT JOIN accounts ON ipbans.admin_id = accounts.id WHERE ipbans.ip = '?' LIMIT 1;", | |||
GetPlayerIP(player)) | |||
mariadb_async_query(sql, query, OnAccountCheckIpBan, player) | |||
end | |||
function OnAccountCheckIpBan(player) | |||
if (mariadb_get_row_count() == 0) then | |||
--No IP ban found for this account | |||
if (PlayerData[player].accountid == 0) then | |||
CreatePlayerAccount(player) | |||
else | |||
LoadPlayerAccount(player) | |||
end | |||
else | |||
print("Kicking "..GetPlayerName(player).." because their IP was banned") | |||
local result = mariadb_get_assoc(1) | |||
if (result['steam_name'] == nil) then | |||
KickPlayer(player, "🚨 You have been banned from the server.") | |||
else | |||
KickPlayer(player, "🚨 You have been banned from the server by "..result['steam_name']..".") | |||
end | |||
end | |||
end | |||
</syntaxhighlight> | |||
{{RelatedFunctions}} | {{RelatedFunctions}} | ||
{{Template:MariaDBFunctions}} | {{Template:MariaDBFunctions}} |
Latest revision as of 09:08, 2 September 2020
Description
Returns the row count of the query result.
Syntax
mariadb_get_row_count()
Parameters
- This function has no parameters.
Return Value
- Returns the number of row count.
Example
Example taken from: https://github.com/BlueMountainsIO/OnsetLuaScripts/blob/master/horizon/server/accounts.lua
function CheckForIPBan(player)
local query = mariadb_prepare(sql, "SELECT ipbans.reason, accounts.steam_name FROM ipbans LEFT JOIN accounts ON ipbans.admin_id = accounts.id WHERE ipbans.ip = '?' LIMIT 1;",
GetPlayerIP(player))
mariadb_async_query(sql, query, OnAccountCheckIpBan, player)
end
function OnAccountCheckIpBan(player)
if (mariadb_get_row_count() == 0) then
--No IP ban found for this account
if (PlayerData[player].accountid == 0) then
CreatePlayerAccount(player)
else
LoadPlayerAccount(player)
end
else
print("Kicking "..GetPlayerName(player).." because their IP was banned")
local result = mariadb_get_assoc(1)
if (result['steam_name'] == nil) then
KickPlayer(player, "🚨 You have been banned from the server.")
else
KickPlayer(player, "🚨 You have been banned from the server by "..result['steam_name']..".")
end
end
end
See also
- OnQueryError
- mariadb_log
- mariadb_connect
- mariadb_connect_file
- mariadb_close
- mariadb_unprocessed_queries
- mariadb_async_query
- mariadb_query
- mariadb_await_query
- mariadb_query_file
- mariadb_await_query_file
- mariadb_errno
- mariadb_error
- mariadb_escape_string
- mariadb_prepare
- mariadb_set_charset
- mariadb_get_charset
- mariadb_stat
- mariadb_get_row_count
- mariadb_get_field_count
- mariadb_get_result_count
- mariadb_get_field_name
- mariadb_set_result
- mariadb_get_value_index
- mariadb_get_value_index_int
- mariadb_get_value_index_float
- mariadb_get_value_name
- mariadb_get_value_name_int
- mariadb_get_value_name_float
- mariadb_save_result
- mariadb_delete_result
- mariadb_set_active_result
- mariadb_unset_active_result
- mariadb_is_any_result_active
- mariadb_is_valid_result
- mariadb_get_affected_rows
- mariadb_get_warning_count
- mariadb_get_insert_id
- mariadb_get_query_exec_time
- mariadb_get_query_string
- mariadb_get_row
- mariadb_get_assoc