Se connecter sur un serveur mysql distant

Dans ta my.cnf (/var/db/mysql/my.cnf sous BSD par exemple)
Code:
Commenter:
#skip-networking

Décommenter ou ajouter:
port = 3306
bind-address = 0.0.0.0
0.0.0.0 = écouter sur toutes les IPs: loopback, et carte réseau


Dans ton script php:
Code:
require "sql_credentials.inc";

# Connect to mysql
function my_connect()
{
$lk=mysql_connect(SQL_HOST,SQL_USER,SQL_PASS) or die("Couldn\'t connect: ".mysql_error());
mysql_select_db(SQL_BASE);
return $lk;
}
C'est intéressant de mettre ton user/pass SQL ailleurs comme ça tu peux mettre des droits très restreints sur ton fichier sql_credentials.inc, tout en laissant des gens de confiance éditer le code du site.


sql_credentials.inc
Code:
DEFINE(SQL_HOST,"l.ip.du.serveur");
DEFINE(SQL_USER,"un_username");
DEFINE(SQL_PASS,"un_pass_sql");
DEFINE(SQL_BASE,"la_base_sql");
?>
On peut aussi bien utiliser des variables, perso je trouve des DEFINE plus propres pour des valeurs constantes.


Dans ta conf apache pour interdire l'accès direct aux .inc
Code:

Order allow,deny
Deny from all
Satisfy All
Tout fichier qui se termine par .inc ne sera pas servi par apache, mais c'est toujours possible de l'include
dam23  est déconnecté   Réponse avec  citation
espaceur


ceydric