LXI. MySQL Functions
These functions allow you to access MySQL database servers. In order to have these
functions available, you must compile PHP with MySQL support by using the --with-mysql
option. If you use this option without specifying the path to MySQL, PHP will use the built-in
MySQL client libraries. Users who run other applications that use MySQL (for example, running PHP 3
and PHP 4 as concurrent apache modules, or auth-mysql) should always specify the path to MySQL:
--with-mysql=/path/to/mysql. This will force PHP to use the client libraries installed by
MySQL, avoiding any conflicts.
More information about MySQL can be found at http://www.mysql.com/.
Documentation for MySQL can be found at http://www.mysql.com/documentation/.
The behaviour of the MySQL functions is affected by settings in the global configuration file.
Table 1. MySQL Configuration Options
| Name |
Default |
Changeable |
| mysql.allow_persistent |
"On" |
PHP_INI_SYSTEM |
| mysql.max_persistent |
"-1" |
PHP_INI_SYSTEM |
| mysql.max_links |
"-1" |
PHP_INI_SYSTEM |
| mysql.default_port |
NULL |
PHP_INI_ALL |
| mysql.default_socket |
NULL |
PHP_INI_ALL |
| mysql.default_host |
NULL |
PHP_INI_ALL |
| mysql.default_user |
NULL |
PHP_INI_ALL |
For further details and definition of the PHP_INI_* constants see
ini_set().
This simple example shows how to connect, execute a query, print resulting rows and
disconnect from a MySQL database.
|
Example 1. MySQL extension overview example
<?php
// Connecting, selecting database
$link = mysql_connect("mysql_host", "mysql_login", "mysql_password")
or die("Could not connect");
print "Connected successfully";
mysql_select_db("my_database")
or die("Could not select database");
// Performing SQL query
$query = "SELECT * FROM my_table";
$result = mysql_query($query)
or die("Query failed");
// Printing results in HTML
print "<table>\n";
while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) {
print "\t<tr>\n";
foreach ($line as $col_value) {
print "\t\t<td>$col_value</td>\n";
}
print "\t</tr>\n";
}
print "</table>\n";
// Closing connection
mysql_close($link);
?>
|
|
- Table of Contents
- mysql_affected_rows -- Get number of
affected rows in previous MySQL operation
- mysql_change_user -- Change logged in
user of the active connection
- mysql_close -- Close MySQL connection
- mysql_connect -- Open a connection to a
MySQL Server
- mysql_create_db -- Create a MySQL
database
- mysql_data_seek -- Move internal result
pointer
- mysql_db_name -- Get result data
- mysql_db_query -- Send a MySQL query
- mysql_drop_db -- Drop (delete) a MySQL
database
- mysql_errno -- Returns the numerical value
of the error message from previous MySQL operation
- mysql_error -- Returns the text of the error
message from previous MySQL operation
- mysql_escape_string -- Escapes a
string for use in a mysql_query.
- mysql_fetch_array -- Fetch a result
row as an associative array, a numeric array, or both.
- mysql_fetch_assoc -- Fetch a result
row as an associative array
- mysql_fetch_field -- Get column
information from a result and return as an object
- mysql_fetch_lengths -- Get the
length of each output in a result
- mysql_fetch_object -- Fetch a result
row as an object
- mysql_fetch_row -- Get a result row as an
enumerated array
- mysql_field_flags -- Get the flags
associated with the specified field in a result
- mysql_field_name -- Get the name of the
specified field in a result
- mysql_field_len -- Returns the length of
the specified field
- mysql_field_seek -- Set result pointer
to a specified field offset
- mysql_field_table -- Get name of the
table the specified field is in
- mysql_field_type -- Get the type of the
specified field in a result
- mysql_free_result -- Free result
memory
- mysql_insert_id -- Get the id generated
from the previous INSERT operation
- mysql_list_dbs -- List databases
available on a MySQL server
- mysql_list_fields -- List MySQL result
fields
- mysql_list_tables -- List tables in a
MySQL database
- mysql_num_fields -- Get number of fields
in result
- mysql_num_rows -- Get number of rows in
result
- mysql_pconnect -- Open a persistent
connection to a MySQL server
- mysql_query -- Send a MySQL query
- mysql_unbuffered_query -- Send an
SQL query to MySQL, without fetching and buffering the result rows
- mysql_result -- Get result data
- mysql_select_db -- Select a MySQL
database
- mysql_tablename -- Get table name of
field
- mysql_get_client_info -- Get MySQL
client info
- mysql_get_host_info -- Get MySQL host
info
- mysql_get_proto_info -- Get MySQL
protocol info
- mysql_get_server_info -- Get MySQL
server info
|