Я пытаюсь переключаться между подключениями к базам данных (просто меняю имя хоста) в зависимости от выбранного имени БД.
Я получил <a>
тегов со значениями.
<div class="user-menu dropdown-menu">
<a class="nav-link" href="db" id="db_one"><i class="fa fa-database"></i> DB 1</a>
<a class="nav-link" href="db" id="db_two"><i class="fa fa-database"></i> DB 2</a>
</div>
Теперь я проверяюкакой <a>
щелкается, затем принимает значение db_one/db_two
и отправляет его через ajax в мой файл подключения php.
Где моя ошибка?У меня все еще есть соединение по умолчанию
$("a[href='db']").click(function(e) {
e.preventDefault();
var hostname = e.target.id;
console.log(hostname);
$.ajax({
url: 'connection.php',
data: hostname,
type: "post",
success: function() {
alert('done');
console.log('this is: ' + hostname);
location.reload();
},
});
});
Я перезагружаю страницу, чтобы "переподключиться" с помощью базы данных.
И, наконец, мое php-соединение.
<?php
$host = $_POST['hostname'];
$hostname = $host;
switch ($hostname) {
case "db_one":
$conn = mysqli_connect("$hostname", "my_user", "my_password", "my_db");
if($conn === false){
die("ERROR: Could not connect. " . mysqli_connect_error());
} else {
echo "<script>console.log('connected');</script>";
}
break;
case "db_two":
$conn = mysqli_connect("$hostname", "my_user", "my_password", "my_db");
if($conn === false){
die("ERROR: Could not connect. " . mysqli_connect_error());
} else {
echo "<script>console.log('Polaczenie z baza nawiazane');</script>";
echo "<script>console.log('connected');</script>";
}
break;
default:
$conn = mysqli_connect("localhost", "my_user", "my_password", "my_db");
if($conn === false){
die("ERROR: Could not connect. " . mysqli_connect_error());
} else {
echo "<script>console.log('default connect');</script>";
}
}
?>