diff options
| author | polo <ordipolo@gmx.fr> | 2021-07-22 03:49:28 +0200 |
|---|---|---|
| committer | polo <ordipolo@gmx.fr> | 2021-07-22 03:49:28 +0200 |
| commit | 86c2a611e55c9e35384febecf34964e214c0296e (patch) | |
| tree | e910a2f9a135bfc7059fd28c9af6c00ae46b5fde /model | |
| parent | a23573d5aff91e18d1240a6ac84c2962a8a15f87 (diff) | |
| download | melaine-86c2a611e55c9e35384febecf34964e214c0296e.tar.gz melaine-86c2a611e55c9e35384febecf34964e214c0296e.tar.bz2 melaine-86c2a611e55c9e35384febecf34964e214c0296e.zip | |
patch modifs
Diffstat (limited to 'model')
| -rw-r--r-- | model/Article.php | 11 | ||||
| -rw-r--r-- | model/melaine-read.php | 46 | ||||
| -rw-r--r-- | model/melaine-write.php | 24 |
3 files changed, 51 insertions, 30 deletions
diff --git a/model/Article.php b/model/Article.php index afcb1ca..aee4f5d 100644 --- a/model/Article.php +++ b/model/Article.php | |||
| @@ -6,8 +6,9 @@ class Article | |||
| 6 | private $page = ''; // page et donc dossier concerné | 6 | private $page = ''; // page et donc dossier concerné |
| 7 | private $croissant = True; // ordre des éléments du tableau $files | 7 | private $croissant = True; // ordre des éléments du tableau $files |
| 8 | private $files; // noms des fichiers d'un dossier | 8 | private $files; // noms des fichiers d'un dossier |
| 9 | private $nbArticles; // peut servir | 9 | private $oneFile; // correspond à $_SESSION['nomFichier'] |
| 10 | private $articles; // contenu de ces mêmes fichiers | 10 | private $nbArticles; // un fichier = un article |
| 11 | private $articles; // contenu des fichiers | ||
| 11 | 12 | ||
| 12 | private function getFiles() | 13 | private function getFiles() |
| 13 | { | 14 | { |
| @@ -45,7 +46,7 @@ class Article | |||
| 45 | } | 46 | } |
| 46 | 47 | ||
| 47 | // read | 48 | // read |
| 48 | public function getNb() | 49 | public function getNumber() |
| 49 | { | 50 | { |
| 50 | return $this->nbArticles; | 51 | return $this->nbArticles; |
| 51 | } | 52 | } |
| @@ -55,11 +56,11 @@ class Article | |||
| 55 | 56 | ||
| 56 | public function getAll($croissant) | 57 | public function getAll($croissant) |
| 57 | { | 58 | { |
| 58 | $this->croissant = $croissant; | 59 | $this->croissant = $croissant; // inversion de $files? |
| 59 | |||
| 60 | getFiles(); | 60 | getFiles(); |
| 61 | 61 | ||
| 62 | $i = 0; | 62 | $i = 0; |
| 63 | $articles = array(); | ||
| 63 | foreach ($this->files as $file) | 64 | foreach ($this->files as $file) |
| 64 | { | 65 | { |
| 65 | $articles[$i] = file_get_contents($file); | 66 | $articles[$i] = file_get_contents($file); |
diff --git a/model/melaine-read.php b/model/melaine-read.php index 801cd3c..7105acd 100644 --- a/model/melaine-read.php +++ b/model/melaine-read.php | |||
| @@ -3,16 +3,33 @@ | |||
| 3 | // | 3 | // |
| 4 | // accès en lecture seule | 4 | // accès en lecture seule |
| 5 | 5 | ||
| 6 | function lireArticles($page_actuelle, $croissant) | 6 | // obtenir le nom du fichier de l'article qu'on modifie |
| 7 | function getFileName($page, $numArticle) | ||
| 8 | { | ||
| 9 | $files = lireNomsFichiers($page); | ||
| 10 | $fileName = $files[$numArticle - 1]; | ||
| 11 | |||
| 12 | return($fileName); | ||
| 13 | } | ||
| 14 | |||
| 15 | function lireNomsFichiers($page) | ||
| 7 | { | 16 | { |
| 8 | // créer un tableau avec le nom des fichiers html | 17 | // créer un tableau avec le nom des fichiers html |
| 9 | $files = glob('data/' . $page_actuelle . '/html/*.html'); | 18 | $files = glob('data/' . $page . '/html/*.html'); |
| 10 | 19 | ||
| 11 | // nombre de fichiers (= taille du tableau $files) | 20 | return $files; |
| 12 | //$nombreDarticles = count($files); | 21 | } |
| 13 | 22 | ||
| 14 | // tableau contenant tous les articles au format html | 23 | function lireUnArticle($nomFichier) |
| 15 | //$articles = [$nombreDarticles]; | 24 | // ce nom est le chemin complet, donc la page y figure |
| 25 | { | ||
| 26 | return(file_get_contents($nomFichier)); | ||
| 27 | } | ||
| 28 | |||
| 29 | function lireArticles($page, $croissant) | ||
| 30 | { | ||
| 31 | // créer un tableau avec le nom des fichiers html | ||
| 32 | $files = lireNomsFichiers($page); | ||
| 16 | 33 | ||
| 17 | // inverse l'ordre du tableau retourné | 34 | // inverse l'ordre du tableau retourné |
| 18 | if($croissant == False) | 35 | if($croissant == False) |
| @@ -20,23 +37,18 @@ function lireArticles($page_actuelle, $croissant) | |||
| 20 | $files = array_reverse($files); | 37 | $files = array_reverse($files); |
| 21 | } | 38 | } |
| 22 | 39 | ||
| 23 | // for ($i = 0 ; $i < $nombreDarticles ; $i++) | ||
| 24 | // { | ||
| 25 | // // les noms de fichiers commencent par 1 | ||
| 26 | // // les articles dans le tableau[] commencent par 0 | ||
| 27 | // $numero = $i + 1; | ||
| 28 | // $articles[$i] = file_get_contents('data/' . $page_actuelle . '/html/article' . $numero . '.html'); | ||
| 29 | // } | ||
| 30 | $i = 0; | 40 | $i = 0; |
| 31 | foreach ($files as $files) | 41 | $articles = array(); |
| 42 | foreach ($files as $oneFile) | ||
| 32 | { | 43 | { |
| 33 | $articles[$i] = file_get_contents($files); | 44 | $articles[$i] = file_get_contents($oneFile); |
| 34 | $i++; | 45 | $i++; |
| 35 | } | 46 | } |
| 47 | // nombre de fichiers (= taille du tableau $files) | ||
| 48 | //$nombreDarticles = count($files); | ||
| 36 | 49 | ||
| 37 | //print_r($articles); | 50 | //print_r($articles); |
| 38 | //var_dump($articles); | 51 | |
| 39 | |||
| 40 | return($articles); | 52 | return($articles); |
| 41 | } | 53 | } |
| 42 | 54 | ||
diff --git a/model/melaine-write.php b/model/melaine-write.php index 642bf05..462d59e 100644 --- a/model/melaine-write.php +++ b/model/melaine-write.php | |||
| @@ -3,22 +3,30 @@ | |||
| 3 | // | 3 | // |
| 4 | // accès en écriture pour créer ou modifier des articles | 4 | // accès en écriture pour créer ou modifier des articles |
| 5 | 5 | ||
| 6 | |||
| 7 | |||
| 6 | function nouvelArticle($page, $contenuHTML) | 8 | function nouvelArticle($page, $contenuHTML) |
| 7 | { | 9 | { |
| 8 | // manipulation du fichier | 10 | // nommer les fichiers avec le timestamp |
| 9 | //$nom_fichier = 'article' . $article . '.html'; | 11 | // pour les trier par ordre chronologique |
| 10 | $nom_fichier = time() . '.html'; | 12 | // rendre impossible d'avoir deux fois le même nom (à la condition de gérer la "concurrence") |
| 11 | $fichier = fopen('data/' . $page . '/html/' . $nom_fichier, 'w'); // w peut créer un fichier, si il existe déjà, il est effacé par le nouveau contenu | 13 | $nom_fichier = 'data/' . $_GET['page'] . '/html/' . time() . '.html'; |
| 14 | |||
| 15 | $fichier = fopen($nom_fichier, 'w'); // w peut créer un fichier, si il existe déjà, il est effacé par le nouveau contenu | ||
| 12 | fputs($fichier, $contenuHTML); | 16 | fputs($fichier, $contenuHTML); |
| 13 | fclose($fichier); | 17 | fclose($fichier); |
| 14 | chmod('data/' . $page . '/html/' . $nom_fichier, 0666); | 18 | chmod($nom_fichier, 0666); |
| 15 | } | 19 | } |
| 16 | 20 | ||
| 17 | function modifArticle($page, $nom_fichier, $contenuHTML) | 21 | function modifArticle($page, $nomFichier, $contenuHTML) |
| 18 | { | 22 | { |
| 19 | // manipulation du fichier | 23 | // manipulation du fichier |
| 20 | $fichier = fopen('data/' . $page . '/html/' . $nom_fichier, 'w'); // w peut créer un fichier, si il existe déjà, il est effacé par le nouveau contenu | 24 | //$fichier = fopen('data/' . $page . '/html/' . $nom_fichier, 'w'); |
| 25 | $fichier = fopen($nomFichier, 'w'); | ||
| 26 | // w peut créer un fichier, si il existe déjà, il est effacé par le nouveau contenu | ||
| 21 | fputs($fichier, $contenuHTML); | 27 | fputs($fichier, $contenuHTML); |
| 22 | fclose($fichier); | 28 | fclose($fichier); |
| 23 | chmod('data/' . $page . '/html/' . $nom_fichier, 0666); | 29 | //chmod('data/' . $page . '/html/' . $nom_fichier, 0666); |
| 30 | chown($nomFichier, 'http'); | ||
| 31 | chmod($nomFichier, 0666); | ||
| 24 | } \ No newline at end of file | 32 | } \ No newline at end of file |
