Lors de la configuration du site dans Dreamweaver s’offre à nous différents choix pour le serveur d’évaluation, choix qui va notamment permettre la connexion à la base de données, le problème étant qu’on doit ensuite changer les valeurs du fichier de connexion à la base de données pour une utilisation sur un serveur distant.
Dans ce tutorial nous allons utiliser les fonctions de PHP afin de tester si le serveur est en local ou en distant, et suivant le cas renvoyer des informations différentes au fichier de connexion, afin de contourner ce problème de fichier unique.
Configuration du serveur local
On configure d’abord la connexion au réseau local dans la configuration du site.

Puis la connexion à la base de données, toujours en local.

Ceci va nous créer un fichier PHP gérant les paramètres de connexion, fichier ayant pour nom le nom de la connexion (ici conn) et se trouvant en racine de serveur dans le dossier « Connections », notre fichier sera donc « conn.php »
Noms des serveurs
On a besoin de connaitre le nom du serveur web local et distant pour ensuite créer notre fichier de test, pour ce faire PHP nous offre les variables d’environnement.
On crée donc un fichier PHP avec dedans :
<?php
echo getenv(« HTTP_HOST »);
?>
On place ce fichier sur le serveur web local et sur le serveur web distant, ce qui va nous renvoyer le nom des différents serveurs.
Ce qui donne en local par exemple : flashxpress
Et en distant sur un serveur Free : flashxpress.free.fr
Fichier de connexion natif
On ouvre le fichier de connexion créé par Dream, ce qui nous donne :
(les commentaires précédés d’un dièse # font partie du fichier natif).
<?php
# FileName= »Connection_php_mysql.htm »
# Type= »MYSQL »
# HTTP= »true »
$hostname_conn = « localhost »; // le nom du serveur MySql
$database_conn = « flashxpress »; // le nom de la base de données
$username_conn = « root »; // le login de l’utilisateur
$password_conn = « »; // le mot de passe de connexion à la base de données
// la chaine de connexion à la base de données
$conn = mysql_pconnect($hostname_conn, $username_conn, $password_conn) or die(mysql_error());
?>
Il faut bien comprendre que le nom du serveur web n’est pas obligatoirement le même que le serveur de base de données, le test s’éffectue bien sûr sur le nom du serveur web mais les paramètres de connexion sont eux, les paramètres du serveur de base de données.{mospagebreak }
Modification du fichier de connexion
Vous remarquerez que les noms des variables sont suivies du nom que nous avons donné à la connexion, à savoir ici « conn », il faut donc bien respecter ces noms de variables dans la modification du fichier.
($hostname_conn, $database_conn, $username_conn, ect).
<?php
// l’appel au fichier de config de Dream nécessaire pour créer les recordset en local
# FileName= »Connection_php_mysql.htm »
# Type= »MYSQL »
# HTTP= »true »
// début du script
// on teste le serveur pour savoir si on est en local
if (getenv(« HTTP_HOST ») == « flashxpress ») {
// on spécifies les valeurs en local
// le nom du serveur MySql
$hostname_conn = « localhost »;
// le nom de la base de données
$database_conn = « flashxpress »;
// le login
$username_conn = « root »;
// le password
$password_conn = « »;
// la chaine de connexion
$conn = mysql_pconnect($hostname_conn, $username_conn, $password_conn) or die(mysql_error());
}
// on n’est pas sur le serveur local, on donne donc les valeurs du serveur distant
else {
// le nom du serveur MySql
$hostname_conn = « sql.free.fr »;
// le nom de la base de données
$database_conn = « flashxpress »;
// le login
$username_conn = « flashxpress »;
// le password
$password_conn = « pass_flashxpress »;
// la chaine de connexion
$conn = mysql_pconnect($hostname_conn, $username_conn, $password_conn) or die(mysql_error());
}
?>
Conclusion
Il vous suffit ensuite d’uploader ce fichier sur le serveur distant pour ne plus avoir à modifier votre fichier de connexion lors de vos tests local/distant.
Vous pouvez télécharger le fichier de connexion compilé en fragment de code, après installation de l’extension ce fichier se trouve dans Fenêtre> Fragments de code > T.E.V > PHP > Classes > PHP Double connexion.