Modules/MySQL/MysqlQuery

From Multi Theft Auto: Wiki
Revision as of 02:43, 22 April 2006 by IJs (talk | contribs) (→‎Syntax)
Jump to navigation Jump to search

Description

This functions queries the MySQL server through the MySQL connection that has been opened by mysqlOpen. The result of the query is then passed to the script by calling callback_function.

This function is provided by the ml_mysql module.

Use both mysqlGetField and mysqlCleanupResult to deal with the mysql_result object returned by this function.

Syntax

bool mysqlQuery ( string callback_function, string query )

Required Arguments

  • callback_function : The function that is called if the operation is done (please see below)
  • query : The MySQL query that is sent

Callback Arguments

Your callback function has to accept the following arguments:

  • mysql_result rows : Returns the rows in a mysql_result array type
  • int rows : Returns the amount of rows

Optional Arguments

None

Example

 function onMySQLResult ( mysql_result, rows )
   if ( rows > 0 )
     -- we got a valid result, so let's process it
 
     -- we're only expecting 1 row to return (there shouldn't be any nick duplicates)
     player_nick = mysqlGetField ( mysql_result, 0, 0 );
     player_money = mysqlGetField ( mysql_result, 0, 1 );
     player_carid = mysqlGetField ( mysql_result, 0, 2 );
 
     -- clean it up!
     mysqlCleanupResult ( mysql_result );
   else
     -- no rows were returned
   end
 end
 <...>
 mysqlQuery ( "onMySQLResult", "SELECT `nickname`,`money`,`carid` FROM `rpg_players` WHERE `nickname` = 'ORLY'" );