File "gestion_version_DB01.php"
Full Path: /home/analogde/www/FTP/Monsta-FTP-master/gestion_version_DB01.php
File size: 10.4 KB
MIME-type: text/x-php
Charset: utf-8
<?php
/*
CREATE TABLE table_insert_version (
id INT AUTO_INCREMENT PRIMARY KEY,
fichier VARCHAR(255) NOT NULL,
fichier_base VARCHAR(255) NOT NULL,
chemin VARCHAR(255) NOT NULL,
version VARCHAR(255) NOT NULL,
taille BIGINT NOT NULL,
date_creation DATETIME NOT NULL
);
*/
function db_connexion()
{
$db_host = "analogdepat.mysql.db";
$db_user = "analogdepat";
$db_pass = "Un92pac007";
$db_name = "analogdepat";
$connexion = new mysqli($db_host, $db_user, $db_pass, $db_name);
if ($connexion->connect_error)
{
//die("Connection failed: " . $connexion->connect_error);
return(null);
}
else
{
return($connexion);
}
}
function inserer_fichier($connexion, $fichier, $chemin)
{
$chemin_fichier = $chemin ."/" .$fichier;
// Récupérer les informations sur le fichier à partir du chemin
$taille = filesize($chemin_fichier); // Taille en octets
$timestamp_creation = filectime($chemin_fichier); // Timestamp de la création
$fichier_date_creation = date('Y-m-d H:i:s', $timestamp_creation);
echo " ---->>> " .$taille . " " .$fichier_date_creation;
if (preg_match('/_v(\d+)\.(\w+)$/', $fichier, $matches))
{
$version = $matches[1]; // Récupère le numéro de version
$extension = $matches[2]; // Récupère l'extension
echo "Le fichier \"$fichier\" contient la version : $version avec l'extension : .$extension.\n";
$tag_version = "_v" .$version;
$fichier_base = str_replace( $tag_version, '', $fichier);
//$result = preg_replace('/_v\d+/', '', $s);
}
else
{
echo "Le fichier \"$fichier\" ne contient pas de version.\n";
$version = "initial";
$fichier_base = $fichier;
}
$sql = "INSERT INTO table_insert_version (fichier, fichier_base, chemin, version, taille, date_creation)
VALUES ('$fichier', '$fichier_base', '$chemin', '$version', '$taille', '$fichier_date_creation' )";
echo $sql;
if ($connexion->query($sql) === TRUE)
{
return(true);
}
else
{
return(false);
}
}
function requete_historique_fichier($connexion, $fichier)
{
$query = "SELECT * FROM table_insert_version WHERE fichier_base = '$fichier'";
echo $query ."<br><br>";
$result = $connexion->query($query);
if ($result->num_rows > 0)
{
$rowcount = mysqli_num_rows( $result );
echo "NB lignes : " .$rowcount ."<br>";
$tableau_data = [];
$infos = [];
while($row = mysqli_fetch_row($result))
{
//echo $row[1] ." " .$row[2] ." " .$row[3] ."<br>";
$infos = [];
/*
$fichier = $row[1];
$fichier_base = $row[2];
$chemin = $row[3];
$version = $row[4];
$taille = $row[5];
$date_creation = $row[6];
*/
$infos[] = $row[1]; // $fichier
$infos[] = $row[2]; // $fichier_base
$infos[] = $row[3]; // $chemin
$infos[] = $row[4]; // $version
$infos[] = $row[5]; // $taille
$infos[] = $row[6]; // $date_creation
$tableau_data[] = $infos;
}
}
echo "<pre>";
print_r($tableau_data);
echo "</pre>";
/*
$db_host = "analogdepat.mysql.db";
$db_user = "analogdepat";
$db_pass = "Un92pac007";
$db_name = "analogdepat";
$mysqli = new mysqli($db_host, $db_user, $db_pass, $db_name);
if ($mysqli->connect_error)
{
echo "plouf...";
}
else
{
$query = "SELECT * FROM table_insert_version"; // WHERE fichier_base = '$fichier'";
echo $query ."<br><br>";
$result = $mysqli->query($query);
//if ($result->num_rows > 0)
//{
//}
if($result = $mysqli->query($query))
{
// Renvoie le nombre de lignes
$rowcount = mysqli_num_rows( $result );
echo "NB lignes : " .$rowcount ."<br>";
while($row = mysqli_fetch_row($result))
{
echo $row[1] ." " .$row[2] ." " .$row[3] ."<br>";
}
}
}
*/
}
function acces_fichier($connexion, $utilisateur, $fichier )
{
/*
CREATE TABLE table_acces_fichier (
id INT AUTO_INCREMENT PRIMARY KEY,
utilisateur VARCHAR(255) NOT NULL,
fichier VARCHAR(255) NOT NULL,
fichier_base VARCHAR(255) NOT NULL,
date_acces DATETIME DEFAULT CURRENT_TIMESTAMP
);
event_time DATETIME NOT NUL
*/
$fichier_base = getVersion($fichier);
$datetime = new DateTime();
$convert = $datetime->format('Y-m-d H:i:s');
$sql = "INSERT INTO table_acces_fichier (utilisateur, fichier, fichier_base, date_acces)
VALUES ('$utilisateur', '$fichier', '$fichier_base' , now() )";
echo $sql;
if ($connexion->query($sql) === TRUE)
{
return(true);
}
else
{
return(false);
}
/*
$chemin_fichier = $chemin ."/" .$fichier;
// Récupérer les informations sur le fichier à partir du chemin
$taille = filesize($chemin_fichier); // Taille en octets
$timestamp_creation = filectime($chemin_fichier); // Timestamp de la création
$fichier_date_creation = date('Y-m-d H:i:s', $timestamp_creation);
echo " ---->>> " .$taille . " " .$fichier_date_creation;
if (preg_match('/_v(\d+)\.(\w+)$/', $fichier, $matches))
{
$version = $matches[1]; // Récupère le numéro de version
$extension = $matches[2]; // Récupère l'extension
echo "Le fichier \"$fichier\" contient la version : $version avec l'extension : .$extension.\n";
$tag_version = "_v" .$version;
$fichier_base = str_replace( $tag_version, '', $fichier);
//$result = preg_replace('/_v\d+/', '', $s);
}
else
{
echo "Le fichier \"$fichier\" ne contient pas de version.\n";
$version = "initial";
$fichier_base = $fichier;
}
$sql = "INSERT INTO table_insert_version (fichier, fichier_base, chemin, version, taille, date_creation)
VALUES ('$fichier', '$fichier_base', '$chemin', '$version', '$taille', '$fichier_date_creation' )";
echo $sql;
if ($connexion->query($sql) === TRUE)
{
return(true);
}
else
{
return(false);
}
*/
}
function getVersion($fichier)
{
if (preg_match('/_v(\d+)\.(\w+)$/', $fichier, $matches))
{
$version = $matches[1]; // Recupere le numero de version
$extension = $matches[2]; // Recupere l'extension
//echo "Le fichier \"$fichier\" contient la version : $version avec l'extension : .$extension.\n";
$tag_version = "_v" .$version;
$fichier_base = str_replace( $tag_version, '', $fichier);
}
else
{
$fichier_base = $fichier;
}
return($fichier_base);
}
$chemin = "/home/analogde/www/Document_workarea/patrice/Test/capture_IC616_v02.jpg";
// Récupérer le répertoire
$directory = dirname($chemin);
// Récupérer le nom du fichier
$filename = basename($chemin);
echo "Répertoire : " . $directory . "<br>";
echo "Nom du fichier : " . $filename . "<br>";
$handle_connexion = db_connexion();
if($handle_connexion != null)
{
echo "Connexion DB - OK -";
//$status = inserer_fichier($handle_connexion, $filename, $directory);
/*if($status)
{
echo "Insertion valide.";
}*/
//$fichier = "capture_IC616.jpg";
//requete_historique_fichier($handle_connexion, $fichier);
$utilisateur = "patoche";
$status = acces_fichier($handle_connexion, $utilisateur, $filename );
if($status)
{
echo "Insertion acces.";
}
}
/*
$db_host = "analogdepat.mysql.db";
$db_user = "analogdepat";
$db_pass = "Un92pac007";
$db_name = "analogdepat";
$connexion = new mysqli($db_host, $db_user, $db_pass, $db_name);
if ($connexion->connect_error)
{
die("Connection failed: " . $connexion->connect_error);
}
else
{
echo "Bingo !";
$sql = "INSERT INTO base_fichier (name, nombre_revision, courante, identifiant) VALUES ('$name', '$nombre_revision', '$courante' , '$identifiant' )";
if (mysqli_query($connexion, $sql))
{
echo "Nouveau enregistrement créé avec succès";
}
else
{
echo "Erreur : " . $sql . "<br>" . mysqli_error($connexion);
}
mysqli_close($connexion);
}
*/
/*
CREATE TABLE lists_fichiers (
id INT AUTO_INCREMENT PRIMARY KEY,
nom VARCHAR(255) NOT NULL,
revision VARCHAR(255) NOT NULL
taille BIGINT NOT NULL,
date_creation DATETIME NOT NULL
);
INSERT INTO fichiers (nom, revision, taille, date_creation) VALUES
('explorateur01.php', "version1", 1024, '2023-10-01 10:00:00'),
('explorateur01.php', "version2", 52428800, '2023-10-03 14:00:00'),
('explorateur01.php', "version3", 51200, '2023-10-04 16:00:00'),
('explorateur01.php', "version4", 102400, '2023-10-05 18:00:00'),
('explorateur01.php', "version5", 3145728, '2023-10-06 20:00:00')
*/
/*
$search = "P1000122.JPG";
//$query = "SELECT * FROM aww WHERE name = 'P1000122.JPG'";
$query = "SELECT * FROM aww WHERE name = '$search'";
echo "Requete " .$query;
echo "<br><br><br>";
$result = $mysqli->query($query);
if ($result->num_rows > 0)
{
echo "Le champ 'nom' avec la valeur 'patrice' existe dans la table.";
}
else
{
echo "Le champ 'nom' avec la valeur 'patrice' n'existe pas dans la table.";
}
if($result = $mysqli->query($query))
{
// Renvoie le nombre de lignes
$rowcount = mysqli_num_rows( $result );
echo $rowcount ."<br>";
while($row = mysqli_fetch_row($result))
{
echo $row[1] ." " .$row[2] ." " .$row[3] ."<br>";
}
}
if($mysqli->error)
{
printf("Failed..!" , $mysqli->error);
}
$mysqli->close();
*/
/*
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
$file_name = $row['file_name'];
$version = $row['version'];
if (!isset($files[$file_name])) {
$files[$file_name] = [];
}
$files[$file_name][] = $version;
}
}
*/
?>