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 :

Image avec coordonnées


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Mai 2013
    Messages
    54
    Détails du profil
    Informations forums :
    Inscription : Mai 2013
    Messages : 54
    Par défaut Image avec coordonnées
    Bonjour à tous,

    Dans une base de données j'ai le nom d'une image avec des coordonnées. Les images sont stockées dans un dossier au format 'jpeg'.

    je désire afficher mon image sur mon site, cette image devra afficher des traits tracés selon les coordonnées de la base de données.

    En fait j'arrive à le faire grâce à ce code PHP:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <?php header("Content-type: image/jpeg");
    $chemin = "./images/nom_image.jpg";
    $image = imagecreatefromjpeg($chemin);
     
    $noir = imagecolorallocate($image, 0, 0, 0);
    imageline($image, 200, 550, 50, 700, $noir);
    imagejpeg($image);
    }
    ?>
    j'appelle le fichier comme j'appelle une image (puisque mon php ci-dessus renvoie une image):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <img src="testimagemap.php" height="<?php echo $ratio[0][6]?>" width="<?php echo $ratio[0][5] ?>"
    ça marche très bien
    Mon soucis réside dans le fait que je désire charger une image en fonction d'un produit sélectionné (concrètement mon '$chemin' ne doit pas être en dur).
    J'ai essayé en passant un $_SESSION['chemin'] mais ça ne fonctionne pas , d'où mes deux questions:

    1) comment faire pour passer mon chemin ?
    2) est-ce la meilleure méthode pour créer mon image dynamique ? (je suis parti d'un tuto trouvé sur le net)

    Merci à tous, je vous souhaite une agréable journée.

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Par l'url
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <img src="testimagemap.php?image=cequetuveux"
    Et au traitement tu fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $image = str_replace('.', '', $_GET['image']);
    $chemin = "./images/" . $image . ".jpg";
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre averti
    Inscrit en
    Mai 2013
    Messages
    54
    Détails du profil
    Informations forums :
    Inscription : Mai 2013
    Messages : 54
    Par défaut
    Merci beaucoup, effectivement ça fonctionne

    Je n'avais même pas osé faire passer le nom de mon image comme ça

    Par contre tu pourras peut-être m'aider encore un petit peu: j'ai un problème pour toutes les images dont le nom possède des accents
    Je peux toujours tout renommer sans accents mais c'est un sacré boulot, est-ce normal que ça ne fonctionne pas lorsqu'il y à des accents ? Merci encore.

    EDIT = > ah et je vais peut-être dire une connerie mais c'est possible de faire passer un tableau associatif de la même façon ?

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    En fait il serait mieux de travailler avec des id numérique ... dans le cas ou tes produits sont dans une base de données.

    Les accents sont une plaie à gérer pour les noms de fichier, en particulier parce que tous les système n'utilisent pas le même encodage.
    Tu peux cependant déjà utiliser la fonction urlencode pour faire transiter correctement dans l'url :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo '<img src="testimagemap.php?image='  . urlencode($filename) . '" />';
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre averti
    Inscrit en
    Mai 2013
    Messages
    54
    Détails du profil
    Informations forums :
    Inscription : Mai 2013
    Messages : 54
    Par défaut
    Les accents sont une plaie à gérer pour les noms de fichier, en particulier parce que tous les système n'utilisent pas le même encodage.
    Tu peux cependant déjà utiliser la fonction urlencode pour faire transiter correctement dans l'url :
    Malheureusement ça n'a pas fonctionné

    A l'appel de mon image:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo '<img src="testimagemap.php?image='  . urlencode($chemin) . '" />';
    puis mon fichier testimagemap.php:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $image = str_replace('.', '', urldecode($_GET['image']));
    Je ne suis pas sur de mon urldecode mais sinon mon code fonctionne toujours lorsque le nom du fichier ne contient pas d'accent. J'ai aussi vérifié la présence de mon fichier .jpg dans mon dossier...

    Merci une fois de plus

    EDIT => en fait je viens de me rendre compte que lorsque j'essaie d'afficher une image avec le chemin en dur comportant un accent ça ne fonctionne pas non plus

  6. #6
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Il faut que ton fichier .php soit encodé dans le même encodage que le système de fichiers de ton serveur.
    Bref une vraie plaie les accents.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

Discussions similaires

  1. Réponses: 4
    Dernier message: 01/05/2011, 07h28
  2. Drag and Drop sur une image avec coordonnées générées
    Par psgman113 dans le forum ActionScript 3
    Réponses: 2
    Dernier message: 28/04/2009, 21h58
  3. Economie de mémoire pour plusieur images avec la même source
    Par neness dans le forum Composants VCL
    Réponses: 5
    Dernier message: 18/01/2004, 10h56
  4. PB affichage d'image avec IE
    Par arturo dans le forum Modules
    Réponses: 6
    Dernier message: 25/09/2003, 17h28
  5. [VB6] Affichage d'image avec qlq contraintes
    Par youri dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 21/11/2002, 14h44

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