Funciones de MySQL
PHP Manual

mysql_connect

(PHP 4, PHP 5)

mysql_connectAbre una conexión al servidor MySQL

Advertencia

Esta extensión está obsoleta a partir de PHP 5.5.0, y será eliminada en el futuro. En su lugar, deberían usarse las extensiones MySQLi o PDO_MySQL. Véase también la guía MySQL: elegir una API y P+F relacionadas para más información. Las alternativas a esta función incluyen:

Descripción

resource mysql_connect ([ string $server = ini_get("mysql.default_host") [, string $username = ini_get("mysql.default_user") [, string $password = ini_get("mysql.default_password") [, bool $new_link = false [, int $client_flags = 0 ]]]]] )

Abre o reutiliza una conexión a un servidor MySQL.

Parámetros

server

El servidor MySQL. También se puede incluir un número de puerto. P.ej. "nombre_anfitrión:puerto" o una ruta a un socket local, p.ej. ":/ruta/al/socket" para el servidor local.

Si la directiva PHP mysql.default_host no está definida (por defecto), el valor por defecto es 'localhost:3306'. En SQL safe mode, éste parámetro es ignorado y siempre se usa el valor 'localhost:3306'.

username

El nombre de usuario. El valor por defecto está definido por mysql.default_user. En SQL safe mode, éste parámetro es ignorado y se usa el nombre de usuario que posee el proceso del servidor.

password

La contraseña. El valor por defecto está definido por mysql.default_password. En SQL safe mode, éste parámetro es ignorado y se usa la contraseña vacía.

new_link

Si se realiza una segunda llamada a mysql_connect() con los mismos argumentos, un nuevo enlace no será establecido, pero en su lugar, será devuelto el identificador de enlace del enlace ya abierto. El parámetro new_link modifica éste comportamiento y hace que mysql_connect() siempre abra un nuevo enlace, aun si mysql_connect() fue llamada antes con los mismos parámetros. En SQL safe mode, éste parámetro es ignorado.

client_flags

El parámetro client_flags puede ser una combinación de las siguientes constantes: 128 (habilita el manejo de LOAD DATA LOCAL), MYSQL_CLIENT_SSL, MYSQL_CLIENT_COMPRESS, MYSQL_CLIENT_IGNORE_SPACE o MYSQL_CLIENT_INTERACTIVE. Lea la sección sobre Constantes del cliente MySQL para más información. En SQL safe mode, éste parámetro es ignorado.

Valores devueltos

Devuelve un identificador de enlace de MySQL en caso de éxito o FALSE en caso de error.

Historial de cambios

Versión Descripción
5.5.0 Esta función generará un error de nivel E_DEPRECATED.
4.3.0 Se añadió el parámetro client_flags.
4.2.0 Se añadió el parámetro new_link.

Ejemplos

Ejemplo #1 Ejemplo de mysql_connect()

<?php
$enlace 
=  mysql_connect('localhost''usuario_mysql''contraseña_mysql');
if (!
$enlace) {
    die(
'No pudo conectarse: ' mysql_error());
}
echo 
'Conectado satisfactoriamente';
mysql_close($enlace);
?>

Ejemplo #2 Ejemplo de mysql_connect() usando la sintaxis nombre_anfitrión:puerto

<?php
// nos  conectamos a ejemplo.com y al puerto 3307
$enlace mysql_connect('ejemplo.com:3307',  'usuario_mysql''contraseña_mysql');
if  (!
$enlace) {
    die(
'No pudo conectarse: ' mysql_error());
}
echo 
'Conectado satisfactoriamente';
mysql_close($enlace);

// nos conectamos a ejemplo.com y al puerto 3307
$enlace mysql_connect('127.0.0.1:3307''usuario_mysql',  'contraseña_mysql');
if (!
$enlace) {
    die(
'No pudo conectarse: ' mysql_error());
}
echo 
'Conectado satisfactoriamente';
mysql_close($enlace);
?>

Ejemplo #3 Ejemplo de mysql_connect() usando la sintaxis ":/rota/al/socket"

<?php
// nos  conectamos a localhost y a la toma ej. /tmp/mysql.sock

// variante 1: omitir el localhost
$enlace mysql_connect(':/tmp/mysql''usuario_mysql',  'contraseña_mysql');
if (!
$enlace) {
    die(
'No pudo conectarse: ' mysql_error());
}
echo 
'Conectado satisfactoriamente';
mysql_close($enlace);


// variante 2: con localhost
$enlace mysql_connect('localhost:/tmp/mysql.sock',  'usuario_mysql''contraseña_mysql');
if  (!
$enlace) {
    die(
'No pudo conectarse: ' mysql_error());
}
echo 
'Conectado  satisfactoriamente';
mysql_close($enlace);
?>

Notas

Nota:

Siempre que se especifique "localhost" o "localhost:puerto" como servidor, la biblioteca cliente de MySQL invalidará esto e intentará conectarse a un socket local (llamada tubería en Windows). Si se quiere usar TCP/IP, se ha de utilizar "127.0.0.1" en lugar de "localhost". Si la biblioteca cliente de MySQL intenta conectarse al socket local erróneo, se debería establecer el ruta correcta como en la configuración de PHP y dejar el campo del servidor en blanco.

Nota:

El enlace al servidor se cerrará tan pronto finalice la ejecución del script, a menos que se cierre antes por una llamada explícita a mysql_close().

Nota:

Se pPuede suprimir el mensaje de error en caso de fallo anteponiendo un @ al nombre de la función.

Nota:

El error "Can't create TCP/IP socket (10106)" normalmente significa que la directiva de configuración variables_order no contiene el carácter E. En Windows, si el entorno no es copiadola variable de entorno SYSTEMROOT no estará disponible y PHP tendrá problemas al cargar Winsock.

Ver también


Funciones de MySQL
PHP Manual