debuuuuuuuuuuuuuuuuuuuuuug

This commit is contained in:
2024-04-16 18:55:42 +02:00
parent 392a285c2c
commit c2cfcd3d09

View File

@@ -1,5 +1,7 @@
<?php
$debug = true;
////////////////////////////////////////////////////////////////////////
/////// Gestion de la connxeion ///////////////////////////////////
////////////////////////////////////////////////////////////////////////
@@ -152,10 +154,8 @@ function get_infos($typeVue, $nomTable)
switch ($typeVue) {
case 'schema':
return get_infos_schema($nomTable);
break;
case 'data':
return get_infos_instances($nomTable);
break;
default:
return null;
}
@@ -197,42 +197,14 @@ function get_infos_schema($nomTable)
*/
function get_infos_instances($nomTable)
{
global $connexion;
// récupération des informations sur la table (schema + instance)
$requete = "SELECT * FROM $nomTable";
$res = mysqli_query($connexion, $requete);
if ($res === false) {
die('Erreur SQL : ' . mysqli_error($connexion));
}
// extraction des informations sur le schéma à partir du résultat précédent
$infos_atts = mysqli_fetch_fields($res);
// filtrage des information du schéma pour ne garder que le nom de l'attribut
$schema = array();
foreach ($infos_atts as $att) {
array_push($schema, array('nom' => $att->{'name'})); // syntaxe objet permettant de récupérer la propriété 'name' du de l'objet descriptif de l'attribut courant
}
// récupération des données (instances) de la table
$instances = mysqli_fetch_all($res, MYSQLI_ASSOC);
// renvoi d'un tableau contenant les informations sur le schéma (nom d'attribut) et les n-uplets
return array('schema' => $schema, 'instances' => $instances);
return get_infos_requete("SELECT * FROM " . $nomTable);
}
function get_infos_requete($requete)
{
global $connexion;
// récupération des informations sur la table (schema + instance)
$res = mysqli_query($connexion, $requete);
if ($res === false) {
die('Erreur SQL : ' . mysqli_error($connexion));
}
$res = executer_une_requete($requete);
// extraction des informations sur le schéma à partir du résultat précédent
$infos_atts = mysqli_fetch_fields($res);
@@ -249,6 +221,10 @@ function get_infos_requete($requete)
return array('schema' => $schema, 'instances' => $instances);
}
function convertir_type($code)
{
switch ($code) {
@@ -299,13 +275,40 @@ function convertir_type($code)
/**
* Retourne le résultat (schéma et instances) de la requ$ete $requete
* */
function executer_une_requete($requete)
function executer_une_requete(string $requete)
{
global $connexion;
//TODO
$res = true;
return null;
try {
// récupération des informations sur la table (schema + instance)
$res = mysqli_query($connexion, $requete);
} catch (Exception $e) {
debug_log("Erreur SQL : " . $e->getMessage());
return false;
}
if ($res === false) {
debug_log("Erreur SQL : " . mysqli_error($connexion));
}
return $res;
}
function debug_log(string $msg)
{
global $debug;
if ($debug) {
echo '<h1 style="color: red;">' . $msg . '</h1>';
}
}
?>