query("SET NAMES 'utf8mb4'"); $list = []; $sql = "SELECT bdid as bdid, nom as nom FROM llx_desal_external_bd bd ORDER BY bdid, nom"; $resql=$db->query($sql); if ($resql) { // Parcours des résultats avec fetch_array while ($row = $db->fetch_array($resql)) { // Accès aux colonnes via leur index ou alias $row = ["bdid"=> htmlspecialchars($row['bdid']), "nom"=>htmlspecialchars($row['nom'])]; // Par alias (nom de la colonne) // Affichage des résultats $list[] = $row; } } else { // Gestion de l'erreur echo "Erreur SQL : " . $db->lasterror(); return $list; } return $list; } /** * @param int $id id de la bd * @return array renvoie les informations de la bd selectionné */ public function getBdByPk(int $id) { global $db; $db->query("SET NAMES 'utf8mb4'"); $list = []; $id = $db->escape($id); $sql = "SELECT bdid as idbd, nom, lien, user, port FROM llx_desal_external_bd WHERE bdid='$id'"; $resql=$db->query($sql); if ($resql) { // Parcours des résultats avec fetch_array $row = $db->fetch_array($resql); // Accès aux colonnes via leur index ou alias $list = ["idBD"=>htmlspecialchars($row['idbd']), "nomBD"=>htmlspecialchars($row["nom"]), "lienBD"=>htmlspecialchars($row["lien"]), "user"=>htmlspecialchars($row["user"]), "port"=>htmlspecialchars($row["port"])]; // Par alias (nom de la colonne) // Affichage des résultats } else { // Gestion de l'erreur echo "Erreur SQL : " . $db->lasterror(); return $list; } return $list; } /** * @param string $nom nom de la bd * @param string $lien url de la bd * @param string $user utilisateur a utilisé * @param int $port port de la bd * @return bool renvoie si l'insertion fu effective */ public function insertionBD(string $nom, string $lien, string $user, int $port): bool { global $db; $db->query("SET NAMES 'utf8mb4'"); $nom = $db->escape($nom); // pour protéger contre l'injection sql $lien = $db->escape($lien); // pour protéger contre l'injection sql $user = $db->escape($user); // pour protéger contre l'injection sql $port = $db->escape($port); // pour protéger contre l'injection sql $sql = "INSERT INTO llx_desal_external_bd(nom, lien, user, port) VALUES ('$nom','$lien', '$user', $port);"; $resql=$db->query($sql); if ($resql) { return true; } return false; } /** * @param int $idBD id de la base de donnée * @param string $nom nom de la bd * @param string $lien url de la bd * @param string $user utilisateur a utilisé * @param int $port port de la bd * @return bool renvoie si la modification a pu être faite */ public function modificationBD(int $idBD, string $nom, string $lien, string $user, int $port): bool{ global $db; $db->query("SET NAMES 'utf8mb4'"); $list = []; $idBD = $db->escape($idBD); // pour protéger contre l'injection sql $nom = $db->escape($nom); // pour protéger contre l'injection sql $lien = $db->escape($lien); // pour protéger contre l'injection sql $user = $db->escape($user); // pour protéger contre l'injection sql $port = $db->escape($port); // pour protéger contre l'injection sql $sql = "UPDATE llx_desal_external_bd SET nom='$nom',lien='$lien',user='$user',port='$port' WHERE bdid='$idBD'"; $resql=$db->query($sql); if ($resql) { return true; } return false; } /** * @param int $idBD id de la base de donnée * @return bool renvoie si la suppression a été effectuer */ public function suppressionBD(int $idBD): bool { global $db; $db->query("SET NAMES 'utf8mb4'"); $idBD = $db->escape($idBD); // pour protéger contre l'injection sql $sql = "DELETE FROM llx_desal_external_bd WHERE bdid = $idBD;"; $resql=$db->query($sql); if ($resql) { return true; } return false; } /** * @param $id int id de la base de donnée * @return int renvoie le nombre de tables liées à cette base de donnée */ public function bdPossedeDesTables(int $id) : int { global $db; $res = 0; $db->query("SET NAMES 'utf8mb4'"); $id = $db->escape($id); // pour protéger contre l'injection sql $sql = "SELECT COUNT(tid) as nbrow FROM llx_desal_external_table WHERE bdid = $id;"; $resql=$db->query($sql); if ($resql) { $row = $db->fetch_array($resql); $res = $row["nbrow"]; } return $res; } }