PHP programmeren, custom MySQLi class


– — — — — — Update, 14 juni 2011 — — — — — –
Wat fundamentele veranderingen uitgevoerd, zoals:
– toevoeging queryRow method
– toevoeging queryArray method
– andere naam method sqlClean naar escapeString


Download hier de PDF versie.

Ik ben voor eigen gebruik (en hopelijk later ook publiekelijk gebruik) een Duiklogboek aan het maken in PHP met de technieken PHP, jQuery en MySQL. Het is wat werk, maar ik heb gelukkig veel hulp van mijn broer Bart die me nieuwe dingen leert of een helpende hand biedt als ik vast zit. Voor dit project heb ik een poging gedaan een algemene MySQLi class te schrijven die ik in de toekomst kan gebruiken bij mijn PHP-projecten.

Hieronder wil ik de class met jullie delen en ik hoop dat men me nog wat tips/verbeteringen kan geven. Je zult trouwens zien dat een aantal functies zoals het ophalen van het “last insert id” of aantal “affected rows” niet in de class is opgenomen. Dit is niet nodig omdat MySQLi dit allemaal al heeft en mijn class deze extend. Onder mijn class zie je de “methods” die standaard al in de MySQLi class zitten.

Hierbij de code, klik op een pagina voor een vergroting:

class.mysqli, pag.1

class.mysqli, pag.2

class.mysqli, pag.3

class.mysqli, pag.4

class.mysqli, pag.5

class.mysqli, pag.6


MySQLi class – meer informatie
Class method/variable Beschrijving
mysqli_get_client_stats Returns client per-process statistics
mysqli->affected_rows Gets the number of affected rows in a previous MySQL operation
mysqli->client_info Returns the MySQL client version as a string
mysqli->client_version Get MySQL client info
mysqli->client_version Get MySQL client info
mysqli->connect_errno Returns the error code from last connect call
mysqli->connect_error Returns a string description of the last connect error
mysqli->errno Returns the error code for the most recent function call
mysqli->error Returns a string description of the last error
mysqli->field_count Returns the number of columns for the most recent query
mysqli->get_client_info Returns the MySQL client version as a string
mysqli->host_info Returns a string representing the type of connection used
mysqli->info Retrieves information about the most recently executed query
mysqli->insert_id Returns the auto generated id used in the last query
mysqli->protocol_version Returns the version of the MySQL protocol used
mysqli->server_info Returns the version of the MySQL server
mysqli->server_version Returns the version of the MySQL server as an integer
mysqli->sqlstate Returns the SQLSTATE error from previous MySQL operation
mysqli->thread_id Returns the thread ID for the current connection
mysqli->warning_count Returns the number of warnings from the last query for the given link
mysqli::__construct Open a new connection to the MySQL server
mysqli::autocommit Turns on or off auto-commiting database modifications
mysqli::change_user Changes the user of the specified database connection
mysqli::character_set_name Returns the default character set for the database connection
mysqli::close Closes a previously opened database connection
mysqli::commit Commits the current transaction
mysqli::debug Performs debugging operations
mysqli::dump_debug_info Dump debugging information into the log
mysqli::get_charset Returns a character set object
mysqli::get_connection_stats Returns statistics about the client connection
mysqli::get_warnings Get result of SHOW WARNINGS
mysqli::init Initializes MySQLi and returns a resource for use with mysqli_real_connect()
mysqli::kill Asks the server to kill a MySQL thread
mysqli::more_results Check if there are any more query results from a multi query
mysqli::multi_query Performs a query on the database
mysqli::next_result Prepare next result from multi_query
mysqli::options Set options
mysqli::ping Pings a server connection, or tries to reconnect if the connection has gone down
mysqli::poll Poll connections
mysqli::prepare Prepare an SQL statement for execution
mysqli::query Performs a query on the database
mysqli::real_connect Opens a connection to a mysql server
mysqli::real_escape_string Escapes special characters in a string for use in an SQL statement, taking into account the current charset of the connection
mysqli::real_query Execute an SQL query
mysqli::reap_async_query Get result from async query
mysqli::rollback Rolls back current transaction
mysqli::select_db Selects the default database for database queries
mysqli::set_charset Sets the default client character set
mysqli::set_local_infile_default Unsets user defined handler for load local infile command
mysqli::set_local_infile_handler Set callback function for LOAD DATA LOCAL INFILE command
mysqli::ssl_set Used for establishing secure connections using SSL
mysqli::stat Gets the current system status
mysqli::stmt_init Initializes a statement and returns an object for use with mysqli_stmt_prepare
mysqli::store_result Transfers a result set from the last query
mysqli::thread_safe Returns whether thread safety is given or not
mysqli::use_result Initiate a result set retrieval