Se connecter avec
S'enregistrer | Connectez-vous

Liens avec espaces

Dernière réponse : dans Programmation
Lassé par la pub ? Créez un compte

souricou a écritEst-il possible de faire des liens HTML vers des fichiers dont les noms comportent des espaces? En effet, le raccourcis du lien n'aboutit pas car tout ce qui est après un espace est "avalé"...
Or le chemin d'acces au fichier est stoqué dans une variable PHP sur laquelle des tests de droits d'acces au fichier sont effectués.

:??: 
%20

Mais j'ai essayé mais le chemin est rangé dans une variable $file. C'est pour ça, j'ai même essayé de recréer une nouvelle variable par concaténation de morceaux de la premiere avec des substr du style $home2=substr($file,15).%20.substr($file,...); mais d'une part ceci ne marche pas et n'est pas portable car il me faut connaitre ou sont les espaces dans le nom de fichiers et d'autre part ma boucle while sur l'ensemble des fichiers ne sert a rien et il faut les faire un par un. C'est pour ca que je disais que c'était stoqué à l'interieur d'une variable qui change a chaque tour de boucle. :sweat: 

souricou a écritEst-il possible de faire des liens HTML vers des fichiers dont les noms comportent des espaces? En effet, le raccourcis du lien n'aboutit pas car tout ce qui est après un espace est "avalé"...
Or le chemin d'acces au fichier est stoqué dans une variable PHP sur laquelle des tests de droits d'acces au fichier sont effectués.

:??: 

<?php
$var = "nom du fichier avec espace";
$var_url = urlencode($var);
echo "<a href=lien.htm?lien=". $var_url .">et hop</a>\n"
?>
pour plus de detail sur urlencode :
http://fr.php.net/manual/fr/function.urlencode.php

souricou a écritMais j'ai essayé mais le chemin est rangé dans une variable $file. C'est pour ça, j'ai même essayé de recréer une nouvelle variable par concaténation de morceaux de la premiere avec des substr du style $home2=substr($file,15).%20.substr($file,...); mais d'une part ceci ne marche pas et n'est pas portable car il me faut connaitre ou sont les espaces dans le nom de fichiers et d'autre part ma boucle while sur l'ensemble des fichiers ne sert a rien et il faut les faire un par un. C'est pour ca que je disais que c'était stoqué à l'interieur d'une variable qui change a chaque tour de boucle. :sweat: 


pour remplacer dans une chaine, des caractere dont tu ne connais pas l'emplacement, utilise la fonction
ereg_replace
http://fr2.php.net/function.ereg-replace
Lassé par la pub ? Créez un compte