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

Symfony PHP Discussion :

Avoir des liens absolus vers des fichiers statiques ? [1.x]


Sujet :

Symfony PHP

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2010
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 13
    Points : 10
    Points
    10
    Par défaut Avoir des liens absolus vers des fichiers statiques ?
    Bonjour,

    Je souhaiterai avoir des liens absolus sur certains fichiers, et en faire des constantes dans app.yml, mais je ne sais pas trop comment faire.

    J'ai essayé :

    player_url: <?php echo sprintf('http://%s/%s', $_SERVER['HTTP_HOST'], 'swf/player.swf') ; ?>

    Mais biensur, ça ne fonctionne pas, car HTTP_HOST n'est pas dispo en CLI.

    Une idée de comment faire ça ?
    Dans le fichier ProjetConfiguration peut-être ?

    Merci !

  2. #2
    Membre expert
    Avatar de ThomasR
    Homme Profil pro
    Directeur technique
    Inscrit en
    Décembre 2007
    Messages
    2 230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2007
    Messages : 2 230
    Points : 3 972
    Points
    3 972
    Par défaut
    Bonjour,

    Tu peux faire comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <?php
    $url = parse_url($_SERVER['REQUEST_URI']);
    ?>
    player_url: <?php printf('http://%s/%s', $url['host'], 'swf/player.swf') ; ?>
    Tu peux utiliser printf plutôt que de faire un echo d'une chaine formattée.

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2010
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 13
    Points : 10
    Points
    10
    Par défaut
    Merci pour l'astuce du printf

    En revanche,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <?php
    $url = parse_url($_SERVER['REQUEST_URI']);
    ?>
    ne fonctionne pas car $_SERVER['REQUEST_URI'] ne renvoie rien en contexte CLI

  4. #4
    Membre expert
    Avatar de ThomasR
    Homme Profil pro
    Directeur technique
    Inscrit en
    Décembre 2007
    Messages
    2 230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2007
    Messages : 2 230
    Points : 3 972
    Points
    3 972
    Par défaut
    Ha t'es en CLI :s,

    Si t'es en ligne de commande t'as forcément pas de contexte web, donc tu n'as aucun moyen de récupérer l'hôte (puisqu'il n'y en a pas).

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    player_url: http://mydomain.ext/swf/player.swf
    Si tu veux dynamiser çà tu peux mettre un token dans la chaine player_url et le remplacer lorsque tu en as besoin dans un contexte web :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    player_url: http://%s/swf/player.swf
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    printf(config('player_url'), $_SERVER['HTTP_HOST']);

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2010
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 13
    Points : 10
    Points
    10
    Par défaut
    En fait c'est moi qui ai mal vu :

    Symfony.bat me retourne une erreur lorsque je fais un cc :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    PHP Notice:  Undefined index: HTTP_HOST in E:\...\config\app.yml
    on line 19
     
      Unable to parse file "E:\.../config/app.yml": Unable to parse l
    ine 21 (http:///swf/player.swf).
    mais en contexte non CLI (je ne sais plus comment cela s'appele, web? ), tout est ok si je regarde la debug bar ...

    Merci en tout cas ;-)

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

Discussions similaires

  1. [PPT-2010] Liens relatifs vers des fichiers aux noms relatifs
    Par minimir dans le forum Powerpoint
    Réponses: 0
    Dernier message: 06/09/2012, 16h53
  2. [XL-2003] Liens hypertexte vers des fichiers photos
    Par jcp66 dans le forum Excel
    Réponses: 9
    Dernier message: 24/05/2011, 07h19
  3. [Joomla!] Placer des liens externes sur des pages statiques
    Par BRMAR dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 2
    Dernier message: 17/07/2007, 18h04

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