getPdo(); $adresse = $bd->getNomBd(); $list = []; $resql= $pdo->query("SELECT table_name FROM information_schema.tables WHERE table_schema = '$adresse';"); foreach ($resql as $value){ $list[] = $value["table_name"]; } return $list; } /** * @param bdExterneInteraction $bd bd externe qui permet le requêtage sql * @param $table string nom de la table * @return string return le type de la clef primaire */ public static function getTypePk(bdExterneInteraction $bd, string $table) : string { $pdo = $bd->getPdo(); $sql = "SELECT DATA_TYPE FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = '$table' AND COLUMN_KEY = 'PRI';"; $resql= $pdo->query($sql); return $resql->fetch()[0]; } /** * @param bdExterneInteraction $bd bd externe qui permet le requêtage sql * @param $table string nom de la table * @return string return le nom de la colonne de la clef primaire */ public static function getPk(bdExterneInteraction $bd, string $table) { $pdo = $bd->getPdo(); $sql = "SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = '$table' AND COLUMN_KEY = 'PRI';"; $nomClef = $pdo->query($sql); $nomClef = $nomClef->fetch()["COLUMN_NAME"]; return $nomClef; } /** * @param bdExterneInteraction $bd bd externe qui permet le requêtage sql * @param $listeValue array liste des valeurs liée a récupéré * @param $table string nom de la table * @return array liste des valeurs récupérées */ public static function getValeurAExporter(bdExterneInteraction $bd, array $listeValue, string $table){ $pdo = $bd->getPdo(); $liste = []; $parametreSelection = ""; foreach ($listeValue as $value){ if ($value["fixe"] == "false") $parametreSelection = $parametreSelection.", ".$value[key($value)]; } $parametreSelection = substr($parametreSelection, 2); $sql = "SELECT $parametreSelection FROM $table;"; $resql= $pdo->query($sql); $ligne = []; foreach ($resql as $row){ foreach ($listeValue as $value){ if ($value["fixe"] == "false") $ligne[key($value)] = $row[$value[key($value)]]; else $ligne[key($value)] = $value[key($value)]; } $liste[] = $ligne; } return $liste; } }