Eléphant du PHP |
66 Messages
06 juin 2023, 22:22
donc pour moi mon erreur est sur la première partie de mon code sur les constantes define !!
<?php
//nom du dossier principal
define('WEB_DIR_NAME', 'projet_image');
//nom du dossier contenant les images et qui est donc le sous-dossier du répertoire principal
define('IMAGE_DIR_NAME', 'images');
//le chemin (path) complet du répertoire images
define('IMAGE_DIR_PATH', $_SERVER['DOCUMENT_ROOT'] . '/' . IMAGE_DIR_NAME . '/');
//l'URL du répertoire images
define('IMAGE_DIR_URL', 'http://' . $_SERVER['HTTP_HOST'] . '/' . WEB_DIR_NAME . '/' . IMAGE_DIR_NAME . '/');
class Image {
//retourne les fichiers présent dans le répertoire $directory
public function getImages($directory){
//ouverture du répertoire
if ($handel = opendir($directory)){
//création d'un tableau vide $images pour récupérer les fichiers
$images = [];
//pour chaque entrée dans le répertoire
while(false !==($entry = readdir($handel))){
//vérification qu'il s'agit d'un fichier
if ($entry != '.' AND $entry != '..'){
//ajout du nom du fichier au tableau $images
$images [] = $entry;
}
}
}
//fermeture du répertoire
closedir($handel);
//retour tableau des fichiers du répertoire $directory
return $images;
}
}
?>
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<?php
$image = new Image();
//récupération tableau des noms de fichier présents dans le répertoire
$images = $image->getImages(IMAGE_DIR_PATH);
?>
<!--affichage des photos-->
<ul>
<?php foreach($images as $image): ?>
<li><img scr="<?php echo IMAGE_DIR_URL . $image; ?>"></li>
<?php endforeach; ?>
</ul>
</body>
</html>