(PHP 4, PHP 5)
mysql_connect — Deschide o conexiune la un server MySQL
$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
]]]]] )Deschide sau reutilizează o conexiune la un server MySQL.
server
Serverul MySQL. De asemenea se poate include și numărul portului. De ex. "hostname:port" sau o cale către un socket local de ex. ":/calea/spre/socket" pentru localhost.
Dacă directiva PHP mysql.default_host nu este definită (implicit), atunci valoarea implicită este 'localhost:3306'. În modul SQL securizat acest parametru e ignorat și este utilizată întotdeauna valoarea 'localhost:3306'.
username
Numele de utilizator. Valoarea implicită este definită de mysql.default_user. În modul SQL securizat acest parametru e ignorat și este utilizat numele utilizatorului sub care rulează serverul.
password
Parola. Valoarea implicită este definită de mysql.default_password. În modul SQL securizat acest parametru e ignorat și este utilizată o parolă vidă.
new_link
Dacă se efectuează un apel repetat al mysql_connect()
cu aceleași argumente, nu se crează o legătură nouă, dar va fi întors
identificatorul legăturii deja deschise. Parametrul
new_link
modifică acest comportament și indică
mysql_connect() întotdeauna să deschidă o legătură
nouă, chiar dacă mysql_connect() a fost apelat
anterior cu aceiași parametri.
În modul SQL securizat acest parametru este ignorat.
client_flags
Parametrul client_flags
poate fi o combinație a
următoarelor constante:
128 (permite prelucrarea LOAD DATA LOCAL),
MYSQL_CLIENT_SSL
,
MYSQL_CLIENT_COMPRESS
,
MYSQL_CLIENT_IGNORE_SPACE
sau
MYSQL_CLIENT_INTERACTIVE
.
Citiți secțiunea despre Constante ale clientului MySQL pentru
informații suplimentare.
În modul SQL securizat acest parametru este ignorat.
Întoarce un identificator al legăturii MySQL în cazul
succesului, sau FALSE
în cazul eșecului.
Versiunea | Descriere |
---|---|
4.3.0 |
A fost adăugat parametrul client_flags .
|
4.2.0 |
A fost adăugat parametrul new_link .
|
Example #1 Exemplu mysql_connect()
<?php
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$link) {
die('Eșec la conectare: ' . mysql_error());
}
echo 'Conectat cu succes';
mysql_close($link);
?>
Example #2 Exemplu mysql_connect() utilizând sintaxa hostname:port
<?php
// ne conectăm la example.com și portul 3307
$link = mysql_connect('example.com:3307', 'mysql_user', 'mysql_password');
if (!$link) {
die('Eșec la conectare: ' . mysql_error());
}
echo 'Conectat cu succes';
mysql_close($link);
// ne conectăm la localhost la portul 3307
$link = mysql_connect('127.0.0.1:3307', 'mysql_user', 'mysql_password');
if (!$link) {
die('Eșec la conectare: ' . mysql_error());
}
echo 'Conectat cu succes';
mysql_close($link);
?>
Example #3 Exemplu mysql_connect() utilizând sintaxa ":/calea/spre/socket"
<?php
// ne conectăm la localhost prin socket de ex. /tmp/mysql.sock
// varianta 1: omitem localhost
$link = mysql_connect(':/tmp/mysql', 'mysql_user', 'mysql_password');
if (!$link) {
die('Eșec la conectare: ' . mysql_error());
}
echo 'Conectat cu succes';
mysql_close($link);
// varianta 2: cu localhost
$link = mysql_connect('localhost:/tmp/mysql.sock', 'mysql_user', 'mysql_password');
if (!$link) {
die('Eșec la conectare: ' . mysql_error());
}
echo 'Conectat cu succes';
mysql_close($link);
?>
Notă:
Atunci când specificați "localhost" sau "localhost:port" în calitate de server, biblioteca-client MySQL va anula aceasta și va încerca să se conecteze la un socket local (țeavă cu nume (named pipe) în Windows). Dacă doriți să utilizați TCP/IP, utilizați "127.0.0.1" în loc de "localhost". Dacă biblioteca-client MySQL încearcă să se conecteze la un socket local greșit, trebuie să stabiliți calea corectă în în configurația PHP și să lăsați câmpul server vid.
Notă:
Legătura către server va fi închisă îndată ce se va încheia execuția script-ului, dacă nu a fost închisă anterior prin apelarea explicită a funcției mysql_close().
Notă:
Puteți suprima mesajul de eroare în cazul eșecului adăugând un @ înainte de denumirea funcției.
Notă:
Eroarea "Can't create TCP/IP socket (10106)" de obicei înseamnă că directiva de configurare variables_order nu conține caracterul E. În Windows, dacă variabilele de mediu nu sunt încărcate, va lipsi variabila SYSTEMROOT și PHP va avea probleme la încărcarea Winsock.