8792 sujets

Développement web côté serveur, CMS

Salut,

Tout d'abord merci pour les tutorials de ce site qui m'a svt débloqué.


J'aurai voulu savoir comment faire pour travailler en local et sur internet avec mes memes page web.
Je m explique a chaq fois que j upload mes pages sur le net, je dois modifier les lignes suivantes:


mysql_connect("localhost", "root", "");  
mysql_select_db("news"); 


en mettant mon id et mdp de free.


Merci pour vos futurs réponses!

Ciao Smiley biggrin
Modifié par yaw (22 Jan 2007 - 20:44)
Bonsoir,

Vu que tu travailles en PHP, tu dois connaitre la fonction include() ? Il te suffit d'avoir un fichier de configuration sur chaque machine (en local et sur le serveur), où tu déclares des variables que tu reprendras pour la connection.

$mydbhost = 'localhost';
$mydbuser = 'root';
$mydbpass = 'monmotdepasse';
$mydbbase = 'news';

Tout ça dans un param_connection.php par exemple.

Et ensuite pour une connection, dans ton script PHP :
include('param_connection.php');
mysql_connect("$mydbhost", "$mydbuser", "$mydbpass");
mysql_select_db("$mydbbase");


Double disclaimer :
1. je suis une bille en PHP, la syntaxe est peut-être erronée, il y a peut-être mieux à utiliser que la fonction include(), etc. ;
2. niveau sécurité, ça me semble très limite quand même... il y a surement des précautions à prendre.

À ce propos, je déplace ce sujet dans le salon ad hoc, où l'on apportera sans doute des corrections à mes bêtises. Smiley lol
J'ai trouvé la solution idéale pour ne pas avoir à toujours changer ses paramètres de conexion : un fichier mysql.php avec ceci :

function connect () {
$user = "...";
$pass = "...";
$dbname = "...";
$server = "localhost";

if ($_SERVER['REMOTE_ADDR']=='127.0.0.1') {
$user = "root";
$pass = "";
}

mysql_connect($server, $user, $pass);
mysql_select_db($dbname);
}
Merci Smiley cligne , je test ce soir. J'avais pensé au include mais j'avais importer
mysql_connect($server, $user, $pass);
mysql_select_db($dbname);

ce qui ne fonctionnait pas. Smiley decu
Administrateur
Bonjour et bienvenue,

Qu'est-ce qui ne fonctionnait pas? Ces 2 instructions ou bien tout le fichier inclus? Remplace les instructions par $toto = 123; ou bien echo "OK OK OK"; pour vérifier Smiley smile

Note: tu peux utiliser la directive auto_prepend_file si tu ne souhaites pas modifier chacun de tes scripts Smiley lol