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 :

largeur d'une image


Sujet :

Langage PHP

  1. #1
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 470
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 470
    Points : 5 831
    Points
    5 831
    Billets dans le blog
    1
    Par défaut largeur d'une image
    Bonjour,

    je voudrais extraire la largeur d'une image ; j'ai fait un code tout bête :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <?php 
     echo '<img  src="patin.jpg"/>';
     echo 'width='.(getimagesize(.'patin.jpg'.))[0];
     ?>
    qui me génère une erreur :
    Parse error: syntax error, unexpected '.', expecting ')' in /homepages/18/d246623212/htdocs/telepamedia/avisderecherche/test2.php on line 3
    mais je n'arrive pas à trouver ; peut-on m'aider ?

  2. #2
    Membre émérite
    Avatar de Eric2a
    Homme Profil pro
    Technicien
    Inscrit en
    Septembre 2005
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Technicien

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 225
    Points : 2 411
    Points
    2 411
    Par défaut
    Salut,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <?php
    $a=getimagesize('patin.jpg');
    $w=$a[0];
    $h=$a[1];
     
    echo '<img src="patin.jpg" width="'.$w.'" height="'.$h.'" alt="" />';
    echo 'width='.$w;
    ?>

  3. #3
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 470
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 470
    Points : 5 831
    Points
    5 831
    Billets dans le blog
    1
    Par défaut
    Merci Eric

  4. #4
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 470
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 470
    Points : 5 831
    Points
    5 831
    Billets dans le blog
    1
    Par défaut
    J'ai un nouveau souci, toujours avec getimagesize. Cette fois, j'ai les 2 warnings suivants :
    URL file-access is disabled in the server configuration in /homepages/20/d357470176/htdocs/telepamedia/avisderecherche/index.php on line 130
    suivi de
    failed to open stream: no suitable wrapper could be found in /homepages/20/d357470176/htdocs/telepamedia/avisderecherche/index.php on line 130
    Que puis-je faire ?

  5. #5
    Membre émérite
    Avatar de skeud
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2011
    Messages
    1 091
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2011
    Messages : 1 091
    Points : 2 724
    Points
    2 724
    Billets dans le blog
    1
    Par défaut
    Tu peux envoyer la ligne 130 de ton fichier index.php?

  6. #6
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 470
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 470
    Points : 5 831
    Points
    5 831
    Billets dans le blog
    1
    Par défaut
    Au lieu de "envoyer", j'avais lu "enlever" (et du coup, ma page marche, si j'enlève aussi ce qui utilise le résultat).
    La ligne à problème est la suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     $a=getimagesize($name_file);
    et si je fais un echo juste avant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo 'fichier='.$name_file.'<br>';
    , ça me donne un nom de fichier (une url complète) valide....

  7. #7
    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,

    As-tu activé "allow_url_fopen" dans ta configuration PHP ? Si non il faut le faire pour pouvoir lire des URLs pleinement qualifiées.

    Sinon, mets un chemin relatif à la racine du serveur, et qui n'utilise pas le protocole HTTP. En gros les URLs qui commencent par "http://" tu pourras pas connaitre leur dimension avec getimagesize sans activier allow_url_fopen.

    Pour finir, tu ne devrais pas t'embêter comme ceci, le navigateur gère tout seul l'affichage des images aux bonnes dimensions, inutile de faire travailler le serveur ici.

  8. #8
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 470
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 470
    Points : 5 831
    Points
    5 831
    Billets dans le blog
    1
    Par défaut
    As-tu activé "allow_url_fopen" dans ta configuration PHP ?
    Ca, c'est dans php.ini et je ne sais pas y accéder, mais avec un chemin relatif, j'ai résolu mon problème.
    Pour finir, tu ne devrais pas t'embêter comme ceci, le navigateur gère tout seul l'affichage des images aux bonnes dimensions, inutile de faire travailler le serveur ici.
    En général, c'est effectivement inutile, mais je voudrais "resizer" les grosses images, donc il me faut bien leur dimension...

  9. #9
    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
    En général, c'est effectivement inutile, mais je voudrais "resizer" les grosses images, donc il me faut bien leur dimension...
    En fait non, cela peut également être géré directement par le navigateur. Etant donné que tu souhaites faire une redimensionnement proportionnel, si tu ne valorises que la largeur la hauteur sera adaptée en conséquence, et vice-versa.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <!-- img.jpg fait 200px de largeur et 150px de hauteur -->
    Hauteur 75px : <img src="/images/img.jpg" alt="L'image" width="100" /> 
    Largeur 100px : <img src="/images/img.jpg" alt="L'image" height="75" />

  10. #10
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 470
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 470
    Points : 5 831
    Points
    5 831
    Billets dans le blog
    1
    Par défaut
    Oui, d'accord, mais si l'image est toute petite, je ne veux pas la grossir et la rendre floue...

  11. #11
    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
    Citation Envoyé par laurentSc Voir le message
    Oui, d'accord, mais si l'image est toute petite, je ne veux pas la grossir et la rendre floue...
    Je ne vois pas ce que PHP pourrait y changer.

  12. #12
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 470
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 470
    Points : 5 831
    Points
    5 831
    Billets dans le blog
    1
    Par défaut
    Il faut ien que je récupère une des dimensions de l'image, et si elle est trop grosse seulement, appliquer le resizing, et pour récupérer cette dimension et effectuer le test, je ne vois que js ou PHP...

  13. #13
    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
    Citation Envoyé par laurentSc Voir le message
    Il faut ien que je récupère une des dimensions de l'image, et si elle est trop grosse seulement, appliquer le resizing, et pour récupérer cette dimension et effectuer le test, je ne vois que js ou PHP...
    C'est plus clair maintenant.

    Pour cela il y a les attributs css min-width et max-width. Mais il est vrai que cela n'est pas supporté par les vieux navigateurs, d'où l'utilité de PHP ici.

    OK !

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 18/02/2008, 22h04
  2. Réponses: 1
    Dernier message: 15/02/2008, 09h00
  3. Réponses: 11
    Dernier message: 25/02/2007, 01h56
  4. largeur d'une image loader
    Par chernisoft dans le forum Flash
    Réponses: 6
    Dernier message: 27/05/2006, 16h50
  5. [IMAGE] Comment obtenir hauteur largeur d'une image ??
    Par pouillou dans le forum AWT/Swing
    Réponses: 3
    Dernier message: 05/05/2006, 21h38

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