(PHP 4, PHP 5)
mysql_connect — Open a connection to a MySQL Server
Esta extensão tornou-se defasada a partir do PHP 5.5.0 e foi removida no PHP 7.0.0. Em vez disso, as extensões MySQLi ou PDO_MySQL devem ser usadas. Veja também o guia MySQL: escolhendo uma API. Alternativas a esta função incluem:
$server
= ini_get("mysql.default_host"),$username
= ini_get("mysql.default_user"),$password
= ini_get("mysql.default_password"),$new_link
= false
,$client_flags
= 0Opens or reuses a connection to a MySQL server.
server
The MySQL server. It can also include a port number. e.g. "hostname:port" or a path to a local socket e.g. ":/path/to/socket" for the localhost.
If the PHP directive mysql.default_host is undefined (default), then the default value is 'localhost:3306'. In modo seguro do SQL, this parameter is ignored and value 'localhost:3306' is always used.
username
The username. Default value is defined by mysql.default_user. In modo seguro do SQL, this parameter is ignored and the name of the user that owns the server process is used.
password
The password. Default value is defined by mysql.default_password. In modo seguro do SQL, this parameter is ignored and empty password is used.
new_link
If a second call is made to mysql_connect() with the same arguments, no new link will be established, but instead, the link identifier of the already opened link will be returned. The new_link
parameter modifies this behavior and makes mysql_connect() always open a new link, even if mysql_connect() was called before with the same parameters. In modo seguro do SQL, this parameter is ignored.
client_flags
The client_flags
parameter can be a combination of the following constants: 128 (enable LOAD DATA LOCAL
handling), MYSQL_CLIENT_SSL
, MYSQL_CLIENT_COMPRESS
, MYSQL_CLIENT_IGNORE_SPACE
or MYSQL_CLIENT_INTERACTIVE
. Read the section about MySQL client constants for further information. In modo seguro do SQL, this parameter is ignored.
Returns a MySQL link identifier on success ou false
em caso de falha.
Exemplo #1 mysql_connect() example
<?php
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$link) {
die('Could not connect: ' . mysql_error());
}
echo 'Connected successfully';
mysql_close($link);
?>
Exemplo #2 mysql_connect() example using hostname:port
syntax
<?php
// we connect to example.com and port 3307
$link = mysql_connect('example.com:3307', 'mysql_user', 'mysql_password');
if (!$link) {
die('Could not connect: ' . mysql_error());
}
echo 'Connected successfully';
mysql_close($link);
// we connect to localhost at port 3307
$link = mysql_connect('127.0.0.1:3307', 'mysql_user', 'mysql_password');
if (!$link) {
die('Could not connect: ' . mysql_error());
}
echo 'Connected successfully';
mysql_close($link);
?>
Exemplo #3 mysql_connect() example using ":/path/to/socket" syntax
<?php
// we connect to localhost and socket e.g. /tmp/mysql.sock
// variant 1: omit localhost
$link = mysql_connect(':/tmp/mysql', 'mysql_user', 'mysql_password');
if (!$link) {
die('Could not connect: ' . mysql_error());
}
echo 'Connected successfully';
mysql_close($link);
// variant 2: with localhost
$link = mysql_connect('localhost:/tmp/mysql.sock', 'mysql_user', 'mysql_password');
if (!$link) {
die('Could not connect: ' . mysql_error());
}
echo 'Connected successfully';
mysql_close($link);
?>
Nota:
Whenever you specify "localhost" or "localhost:port" as server, the MySQL client library will override this and try to connect to a local socket (named pipe on Windows). If you want to use TCP/IP, use "127.0.0.1" instead of "localhost". If the MySQL client library tries to connect to the wrong local socket, the correct path should be set as mysql.default_host in php.ini and the server field left blank.
Nota:
The link to the server will be closed as soon as the execution of the script ends, unless it's closed earlier by explicitly calling mysql_close().
Nota:
Error "Can't create TCP/IP socket (10106)" usually means that the variables_order configure directive doesn't contain character
E
. On Windows, if the environment is not copied theSYSTEMROOT
environment variable won't be available and PHP will have problems loading Winsock.