Connexions multiples MySQL
Exemples avec 3 Bases de données
<?php
/** identifiants BDD */
define('USER', 'xxxxxxxx'); // Nom Utilisateur
define('MDP', 'Xyxyxy'); // Mot de passe
define('_DB1', 'base_a'); // Nom de votre Base 1
define('_DB2', 'base_b'); // Nom de votre Base 2
define('_DB3', 'base_c'); // Nom de votre Base 3
define('HOST', 'localhost');
// Connection à la Base 1
$conn_DB1 = mysqli_connect(HOST,USER,MDP,_DB1);
// si la connexion se fait en UTF-8, sinon ne rien indiquer
$conn_DB1->set_charset("utf8");
if (!$conn_DB1) {
die("Erreur de connexion: " . mysqli_connect_error());
}
// Connection à la Base 2
$conn_DB2 = mysqli_connect(HOST,USER,MDP,_DB2);
// si la connexion se fait en UTF-8, sinon ne rien indiquer
$conn_DB2->set_charset("utf8");
if (!$conn_DB2) {
die("Erreur de connexion: " . mysqli_connect_error());
}
// Connection à la Base 3
$conn_DB3 = mysqli_connect(HOST,USER,MDP,_DB3);
// si la connexion se fait en UTF-8, sinon ne rien indiquer
$conn_DB3->set_charset("utf8");
if (!$conn_DB3) {
die("Erreur de connexion: " . mysqli_connect_error());
}
?>
<?php
// Exemple requête sur Base 1
$idcommande = 1200;
$sqlCommande = mysqli_query($conn_DB1, 'SELECT * FROM commandes WHERE id_commande = "'.$idcommande.'" ');
$res_commande = mysqli_fetch_object($sqlCommande);
$Nom = $res_commande->Nom;
echo $Nom;
mysqli_close($conn_DB1);
// Exemple UPDATE sur Base 2
$compte_id = 45;
if (isset($_POST['mise_a_jour'])) {
if (!empty($_POST['prenom'])) $Prenom = mysqli_real_escape_string($conn_DB2, $_POST['prenom']);
mysqli_query($conn_DB2, 'UPDATE comptes SET Prenom = "'.$Prenom.'" WHERE id_compte = '.$compte_id.'');
}
mysqli_close($conn_DB2);
// Exemple INSERT sur Base 3
if (isset($_POST['insertmail'])) {
foreach($_POST['check'] as $checkID){
$query_info = mysqli_query($conn_DB3, "SELECT * FROM comptes WHERE id_compte = '".$checkID."' ");
while($res_mail = mysqli_fetch_object($query_info)){
$recuplMail = $res_mail->email;
$recupprenom = $res_mail->prenom;
$sql_new_mail = "INSERT INTO mails_client (
email,
prenom
) VALUES (
'".$recuplMail."',
'".$recupprenom."'
) ON DUPLICATE KEY UPDATE email='".$recuplMail."'
";
$res_sql_new_mail = $conn_DB3->query($sql_new_mail);
}
}
}
mysqli_close($conn_DB3);
?>