masquer les extenssion des fichier dans le listage

Eléphant du PHP | 355 Messages

30 nov. 2005, 20:24

Bonjour à tous :wink:

Quelqu'un pourait-il me dire comment masquer les extenssion des fichier dans le listage sur la page web ?
<?php 
$directories = glob("*.*"); 
foreach ($directories as $dir) 
{ 
   echo '<a href="'.$dir.'" > '.$dir.' </a><br>'; 
} 
?>

Modérateur PHPfrance
Modérateur PHPfrance | 6037 Messages

01 déc. 2005, 11:28

Modération : nouvelle question = nouveau sujet, merci.
Règle n°2 du webmaster : Toujours commencer par le HTML qu'on veut obtenir....toujours ! :priere:
J'aime apprendre de nouvelles choses.

Eléphant du PHP | 440 Messages

01 déc. 2005, 11:35

Hello ,
$fichier=explode(".",$dir);

echo $fichier[0];
C'est peut etre pas tres elegant mais c est une solution simple !
C'est en faisant des erreurs et en osant demander de l'aide qu'on apprend ! Il n'est pas ridicule de ne pas savoir !

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

01 déc. 2005, 12:38

et si le nom du fichier contient des . ?

du style "bak.2005.12.01.txt"
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

Eléphant du PHP | 355 Messages

01 déc. 2005, 12:42

Bonjour DarkBlue et merco beaucoup :wink:

J'ai essayer de placer votre code a plusieurs endoir dans mon script mais il ne fonctionne pas

Mammouth du PHP | 768 Messages

01 déc. 2005, 15:23

et si le nom du fichier contient des . ?

du style "bak.2005.12.01.txt"
http://mario.monsiteinfo.info/index.php ... -extension
M A R I O
Si une patte de lapin porte bonheur, qu'a-t-il bien pu arriver au lapin ?

Eléphant du PHP | 355 Messages

01 déc. 2005, 16:10

J'ais esayer d'adapter sa à mon code:

Code : Tout sélectionner

<?php $directories = glob("*.*"); $fichier=explode(".",$dir); if ($position_point !== FALSE) return $dir = substr($dir, 0, $position_point); foreach ($directories as $dir) if ($dir != 'Desktop.ini' && $dir !='index.php') { echo '<a href="'.$dir.'" > '.$dir.' </a><br>'; } ?>
Mais en vin, je bloque :oops:

Pouriez vous m'aider ?

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

01 déc. 2005, 19:14

tu avais quelque chose de plus ou moins correct et la tu te retrouve avec un grand n'importe quoi !!

tu avait ça:
<?php
$directories = glob("*.*");
foreach ($directories as $dir)
{
   echo '<a href="'.$dir.'" > '.$dir.' </a><br>';
}
?>
qui devrait afficher les fichiers avec l'extension .... ensuite tu as un lien pour t'inspirer (grandement) d'une fonction qui renvois le nom du fichier sans extension.

Il faut que tu fasse appel a cette fonction dans la boucle sur la variable $dir.

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Eléphant du PHP | 355 Messages

01 déc. 2005, 19:23

Bonjour Truc et merci beaucoup :wink:

Justement s'est se que j'ai essayer de faire, mais en vien, pouriez vous m'aider ?

Mammouth du PHP | 1885 Messages

01 déc. 2005, 19:27

Voici une fonction qui permet de récupérer le nom d'un fichier en masquant son extension:
<?php
function filename( $filename ) {
	if (($res = strrpos($filename, '.')) !== FALSE) {
		return substr($filename, 0, $res);
	} else {
		return $filename;
	}
}

echo filename('php-5.1.1.tar.gz');
?>
La programmation est l'expression de la poésie d'un programmeur
Génération PHP

Eléphant du PHP | 355 Messages

01 déc. 2005, 19:33

Bonjour et merci beaucoup :wink:

Mais je n'arrive pas à intégrer votre code avec celui la:
<?php 
$directories = glob("*.*"); 
foreach ($directories as $dir) 
{ 
   echo '<a href="'.$dir.'" > '.$dir.' </a><br>'; 
} 
?> 

Mammouth du PHP | 1885 Messages

01 déc. 2005, 19:37

Comme ceci non?
<?php 
function filename( $filename ) {
    if (($res = strrpos($filename, '.')) !== FALSE) {
        return substr($filename, 0, $res);
    } else {
        return $filename;
    }
}

$directories = glob("*.*"); 
foreach ($directories as $dir) 
{ 
   echo '<a href="'.$dir.'" > '.filename($dir).' </a><br>'; 
} 
?>
La programmation est l'expression de la poésie d'un programmeur
Génération PHP

Eléphant du PHP | 355 Messages

01 déc. 2005, 19:43

Merci beaucoup Xenon_54 :wink:

Cela fonctionne parfaitement bien :D