IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Espace dans une adresse


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Septembre 2005
    Messages
    71
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 71
    Par défaut Espace dans une adresse
    Bonjour,
    Je souhaiterais faire un lien hypertexte vers un fichier qui est créé par mon prog en php. Jusque là rien de sorcier, sauf que le fichier en question est créé sur mon serveur php dans
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $fichier_charg="c:\\program files\\easyphp1-7\\apache\\users\\fichier.txt"
    .
    Il y a donc un espace entre "program" et "files" et quand je fais un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a href=$fichier_charg>
    ben il se passe rien car le lien se fait sur ...
    J'ai tenté de mettre un "%" entre program et files, et du coup j'ai
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    file:///c:/program%25files/easyphp1-7/apache/users/fichier.txt
    mais il ne se passe rien non plus...
    Savez-vous comment rémédier au problème ?
    Merci beaucoup.

  2. #2
    Membre chevronné Avatar de supernova
    Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2005
    Messages
    447
    Détails du profil
    Informations personnelles :
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juillet 2005
    Messages : 447
    Par défaut
    Salut,

    Tu peux mettre le nom de ton répertoire à la "mode" MSDOS :

    c:\program files vaut c:\progra~1 (6 caractères + ~1)

  3. #3
    Membre confirmé
    Inscrit en
    Mars 2007
    Messages
    75
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 75
    Par défaut
    Citation Envoyé par minusette
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $fichier_charg="c:\\program files\\easyphp1-7\\apache\\users\\fichier.txt"
    .
    Deja pourquoi mettre des doubles antislashes? , essaye deja avec des simple ca devrai mieu fonctionner .

    Essaye avec des %20 au lieu de %25

  4. #4
    Modérateur
    Avatar de blueice
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2003
    Messages
    3 494
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2003
    Messages : 3 494
    Par défaut
    Il s'agit d'un problème PHP donc je déplace la discussion.
    Ensuite, fais un phpinfo() et regarde le chemin "DOCUMENT_ROOT" à tout hasard.

  5. #5
    Membre confirmé
    Inscrit en
    Septembre 2005
    Messages
    71
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 71
    Par défaut
    Bonjour,
    Alors pour répondre aux questions :
    Deja pourquoi mettre des doubles antislashes? , essaye deja avec des simple ca devrai mieu fonctionner .

    Essaye avec des %20 au lieu de %25
    Les doubles antislashes ne sont pas indispensables, sauf, si dans l'adresse il y a une variable... J'ai simplifié mon pb pour vous le présenter en enlevant les variables et j'ai pas pensé à enlever les doubles antislashes. Mais avec ou sans ça ne change rien du tout au pb, il prend bien des simples antislashes au final.
    Pour ce qui est du %20, si je lui spécifie, dans ma fenêtre IE, sur mon lien de téléchargement il écrit : "file:///c:/program%20%25files/easyphp1-7/apache/users/fichier.txt". C'est lui qui rajoute le %25 et pas moi...

    Ensuite, fais un phpinfo() et regarde le chemin "DOCUMENT_ROOT" à tout hasard.
    Le chemin du php info est logique : c:/program files/easyphp1-7/www , vu que j'ai installé easyphp dans program files...
    En gros, y-a-t-il une autre solution que réinstaller easyphp ailleurs que dans program files ?
    Merci à vous de vous pencher sur mon problème !

  6. #6
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Par défaut
    Bonjour

    Peut-être que le problème vient du lien et non de la variable...
    Est-ce que tu pourrais donner le code complet du lien où tu appelles cette variable $fichier_charg ?
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  7. #7
    Membre confirmé
    Inscrit en
    Septembre 2005
    Messages
    71
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 71
    Par défaut
    Alors voici mon bout de code non modifié :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    $content_dir = $_POST['DirStock'];
    echo"<TABLE width='50%' cellpadding='10' bgcolor='#80C6EC' align='center'> 
    <tr> 
    <th width='50%' align='CENTER'>Nom du dossier </th> 
    <th width='50%' align='CENTER'>Nom du fichier de sortie </th> 
    </tr>";
    $fichier = "c:\program files\easyphp1-7\apache\users\\".$identifiant."\\".$content_dir."\\".$content_dir.".txt";
    if ( file_exists($fichier)) {
    echo "<tr>"; 
    echo "<td width='12.5%' bgcolor=#FFFFE8 align='center'><FONT SIZE=2><a href=$fichier> $content_dir </FONT></a></td>"; 
    echo "<td width='12.5%' bgcolor=#FFFFE8 align='center'><FONT SIZE=2> $content_dir.txt</FONT></td>"; 
    }
    else {
    echo "<h2><span style='Color: DarkRed;'> Le calcul $content_dir est encore en cours d'exécution !</h2></span>";
    }
    Quelque chose de flagrant que j'ai zappé ?
    Pour info, le if fonctionne bien donc il comprend bien $fichier, par contre c'est lors du téléchargement du lien que ça coince...
    Merci.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 9
    Dernier message: 06/11/2007, 13h36
  2. [Debutant] notation des espaces dans une adresse
    Par DiVa dans le forum Débuter
    Réponses: 3
    Dernier message: 16/03/2006, 18h58
  3. Suppression d'espaces dans une chaîne
    Par dafalri dans le forum Langage
    Réponses: 11
    Dernier message: 20/02/2006, 14h13
  4. [SQL / ORACLE] Supprimer espace dans une phrase
    Par shaun_the_sheep dans le forum Oracle
    Réponses: 10
    Dernier message: 31/01/2006, 17h29
  5. Réponses: 2
    Dernier message: 24/06/2004, 10h13

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo