JTagua

Inicio » PHP » Bases de Datos » MySQL » Tutorial PHP: MySQL

Tutorial PHP: MySQL

Licencia

Creative Commons License

Visitas:

  • 792.440 hits
Anuncios

mysqli::__construct

mysqli_connect

Descripción.

Estilo orientado a objetos

mysqli::__construct() ([ string $host = ini_get(“mysqli.default_host”) [, string $username = ini_get(“mysqli.default_user”) [, string $passwd = ini_get(“mysqli.default_pw”) [, string $dbname = “” [, int $port = ini_get(“mysqli.default_port”) [, string $socket = ini_get(“mysqli.default_socket”) ]]]]]] )

Estilo por procedimientos

mysqli mysqli_connect ([ string $host = ini_get(“mysqli.default_host”) [, string $username = ini_get(“mysqli.default_user”) [, string $passwd = ini_get(“mysqli.default_pw”) [, string $dbname = “” [, int $port = ini_get(“mysqli.default_port”) [, string $socket = ini_get(“mysqli.default_socket”) ]]]]]] )

Abre una conexión al Servidor de MySQL que está en ejecución.

Parámetros

host
Puede ser o un nombre de host o una dirección IP. Pasando el valor NULL o la cadena “localhost” a este parámetro, se asumirá el host local. Cuando es posible, se usarán tuberías en lugar del protocolo TCP/IP. Anteponer p: al host, abre una conexión persistente.
username
El nombre de usuario de MySQL.
passwd
Si no se proporciona o es NULL, el servidor MySQL intentará autentificar el usuario solo con aquellos registros de usuarios que no tienen contraseña. Esto permite que un nombre de usuario ser usado con diferentes permisos (dependiendo de si se proporciona una contraseña o no).
dbname
Si se proporcioina, especificará la base de datos prederminada a usar cuando se realizan consultas.
port
Especifica el número al que intentar conectar al servidor de MySQL.
socket
Especifica el socket o la tubería con nombre que debería usarse. Especificar el parámetro socket no determinará explicitamente el tipo de conexión a utilizar cuando se conecte al servidor MySQL. El modo de realizar la conexión a la base de datos MySQL es determinado por el parámetro host.

Valores devueltos

Devuelve un objeto que representa la conexión al servidor MySQL.

Estilo orientado a objetos

<?php
$mysqli = new mysqli('localhost', 'mi_usuario', 'mi_contraseña', 'mi_bd');

/*
* Esta es la forma OO "oficial" de hacerlo,
* AUNQUE $connect_error estaba averiado hasta PHP 5.2.9 y 5.3.0.
*/
if ($mysqli->connect_error) {
die('Error de Conexión (' . $mysqli->connect_errno . ') '
. $mysqli->connect_error);
}

/*
* Use esto en lugar de $connect_error si necesita asegurarse
* de la compatibilidad con versiones de PHP anteriores a 5.2.9 y 5.3.0.
*/
if (mysqli_connect_error()) {
die('Error de Conexión (' . mysqli_connect_errno() . ') '
. mysqli_connect_error());
}

echo 'Éxito... ' . $mysqli->host_info . "\n";

$mysqli->close();
?>

Estilo orientado a objetos cuando se extiende la clase mysqli


</div>
<div>
<div><code> <?php

class foo_mysqli extends mysqli {
public function __construct($host, $usuario, $contraseña, $bd) {
parent::__construct($host, $usuario, $contraseña, $bd);

if (mysqli_connect_error()) {
die('Error de Conexión (' . mysqli_connect_errno() . ') '
. mysqli_connect_error());
}
}
}

$bd = new foo_mysqli('localhost', 'mi_usuario', 'mi_contraseña', 'mi_bd');

echo 'Éxito... ' . $bd->host_info . "\n";

$bd->close();
?> </code></div>
<div>

Estilo por procedimientos

</div>
<div><code> <?php
$enlace = mysqli_connect('localhost', 'mi_usuario', 'mi_contraseña', 'mi_bd');

if (!$enlace) {
die('Error de Conexión (' . mysqli_connect_errno() . ') '
. mysqli_connect_error());
}

echo 'Éxito... ' . mysqli_get_host_info($enlace) . "\n";

mysqli_close($enlace);
?> </code></div>
<div>

El resultado de los ejemplos serían:

Éxito... MySQL host info: localhost via TCP/IP

MySQLnd siempre utiliza el juego de caracteres de idioma predeterminado.

El juego de caracteres se envía en la autentificación/acuerdo que se produce durante la conexión, que utilizará mysqlnd.Libmysqlclient utiliza el juego de caracteres predeterminado definido en my.cnf o se puede establecer llamando mysqli_options() antes de user mysqli_real_connect(), pero después de mysqli_init().
Sólo para la sintaxis OO: Si una conexión falla se devuelve un objeto.
Para comprobar si la conexión falló, use la función mysqli_connect_error() o la propiedad mysqli->connect_error como en los ejemplos anteriores.

Si es necesario establecer las opciones, tales como el tiempo de espera de conexión, se debe utilizar mysqli_real_connect() en su lugar.

Llamar al constructor sin parámetros es lo mismo que llamar a la función mysqli_init().

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 copiado, la variable de entorno SYSTEMROOT no estará disponible y PHP tendrá problemas al cargar Winsock.


mysqli::$connect_error

mysqli_connect_error

(PHP 5) mysqli::$connect_error — mysqli_connect_error — Devuelve una cadena con la descripción del último error de conexión

Descripción

Estilo orientado a objetos

string $mysqli->connect_error;

Estilo por procedimientos

string mysqli_connect_error ( void )

Devuelve el último mensaje de error de la ultima llamada mysqli_connect().

Valores devueltos

Una cadena que describe el error. Devuelve NULL si no ha ocurrido ningún error.

Estilo orientado a objetos


Estilo por procedimientos


 

El resultado de los ejemplos serían:
Connect Error: Access denied for user 'fake_user'@'localhost' (using password: YES)

Y así el nuevo código de conexión quedará en la forma,

<?php
$link = @mysqli_connect('localhost', 'robin', 'robin123', 'company_db');

if (mysqli_connect_error()) {
	$logMessage = 'MySQL Error: ' . mysqli_connect_error();
	// Call your logger here.
	die('Could not connect to the database');
}

// Rest of the code goes here

?>

mysqli::$connect_errno

mysqli_connect_errno

(PHP 5) mysqli::$connect_errno — mysqli_connect_errno — Devuelve el código de error de la última llamada

Descripción.

Estilo orientado a objetos

string $mysqli->connect_errno;

Estilo por procedimientos

int mysqli_connect_errno ( void )

Devuelve el ultimo código de error de la última llamada mysqli_connect().

Los números de los mensajes de error están listados en el fichero de cabeceras de MySQL errmsg.h, los números de los mensajes de error del servidor están listados en mysqld_error.h. En la distribución de código fuente puede encontrar una lista completa de los mensajes de error y sus números en el fichero Docs/mysqld_error.txt.

Valores devueltos

Un código de error para la ultima llamada a mysqli_connect(), si ha fallado. cero significa que no ha ocurrido ningún error.

Estilo orientado a objetos

Estilo por procedimientos


 

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión /  Cambiar )

Google photo

Estás comentando usando tu cuenta de Google. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

Conectando a %s

A %d blogueros les gusta esto: