0
プログラムは同じテーブルを持つ同じサーバから2 dbの差分を見つけ、phpを使ってテーブルの違いを表示することです。ここでは、dbnamesを選択するのが難しいと思っています。私はフォームメソッドでdbnamesを取得しようとしていました。同じサーバからの差分を2つのデータベースで見つけるには
<html>
<head>
<title>Connecting db</title>
<style>
table, th, td {
border: 1px solid black;
}
</style>
</head>
<body>
<form method="post" action="" >
<label>db1 :</label>
<input type="text" name="db1 name">
<input type="submit" name="submit" value="submit">
<br><br>
<label>db2 :</label>
<input type="text" name="db2 name">
<input type="submit" name="submit" value="submit">
</form>
<?php
if(isset($_POST["submit"])){$servername = "servername";
$username = "username";
$password = "password";
$dbname = "db";
$db1 = $_POST["db1 name"];
$db2 = $_POST["db2 name"];
// Create connection
$conn = new mysqli($servername, $username, $password,$dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "SELECT application_id,application_name\n"
. "FROM "($db1)".applications\n"
. "WHERE(\n"
. " application_id NOT IN \n"
. " (SELECT application_id FROM "($db2)".applications)\n"
. ")\n"
. "GROUP BY application_id LIMIT 0, 30 ";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
echo "<table><tr><th>APPLICATION ID</th><th>APPLICATION Name</th></tr>";
// output data of each row
while($row = $result->fetch_assoc()) {
echo "<tr><td>".$row["application_id"]."</td><td>".$row["application_name"].."</td></tr>";
}
echo "</table>";
} else {
echo "0 results";
}
$conn->close();
}
?>
</body>
</html>