/*---------------------------------------------------------------*/
|
/*
|
Titre : Récupère la place perdue dans une BDD SQL
|
|
URL : https://phpsources.net/code_s.php?id=1110
|
Date édition : 14 Sept 2019
|
Date mise a jour : 14 Sept 2019
|
|
Rapport de la maj:
|
- fonctionnement du code vérifié
|
*/
|
/*---------------------------------------------------------------*/
|
|
$db_server = 'localhost'; // Adresse du serveur MySQL
|
$db_name = ''; // Nom de la base de données
|
$db_user_login = 'root'; // Nom de l'utilisateur
|
$db_user_pass = ''; // Mot de passe de l'utilisateur
|
|
// Ouvre une connexion au serveur MySQL
|
$conn = mysqli_connect($db_server,$db_user_login, $db_user_pass, $db_name);
|
|
?>
|
<html>
|
<head>
|
<title>Récupère la place perdu dans une base de données
|
MySQL</title>
|
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
|
</head>
|
<body>
|
<?php
|
//on prépare la requête
|
$sql = "OPTIMIZE TABLE ";
|
//on recherche toutes les données des tables
|
$req =$conn->query('SHOW TABLE STATUS');
|
while($data = mysqli_fetch_assoc($req)) {
|
//on regarde seulement les tables qui affichent des pertes
|
if($data['Data_free'] > 0) {
|
//et on l'inclut si elle comporte des pertes
|
$sql .= '`'.$data['Name'].'`, ';
|
echo $data['Name'] . "<br>\n";
|
}
|
}
|
//on enlève le ', ' de trop
|
$sql = substr($sql,(strlen($sql)-2));
|
//et on optimise
|
$conn->query($sql);
|
mysqli_close($conn);
|
?>
|
</body>
|
</html>
|
|