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 forum PHP [Débutant(e)]


Sujet :

Langage PHP

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Février 2007
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 12
    Points : 1
    Points
    1
    Par défaut Image forum PHP
    Bonjour à tous, je souhterais savoir comment faire pour redimensionner une image sur un forum en php.

    On m'a conesillé d'utiliser la balise [img]monimage.jpg[/img] et d'essayer de jouer avec des choses telles que <HEIGHT=50 WHITE=100>...

    Enfin je sais plus si c'etait vraiment ça mais en gros je voudrais changer la taille de mon image.


    Merci par avance pour votre aide

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    572
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Haute Vienne (Limousin)

    Informations forums :
    Inscription : Juin 2005
    Messages : 572
    Points : 716
    Points
    716
    Par défaut
    Si je comprend bien ta requete tout se fait en html :

    <img src="chemin/tonimage.jpg" width="100" height="50">
    Tout pas mieux que tout le monde : évitez les questions techniques en mp sinon à quoi bon poster sur un forum ?

    Petite citation : "Le sage cherche la vérité, l'imbécile l'a déjà trouvée"

  3. #3
    Rédacteur
    Avatar de RideKick
    Homme Profil pro
    Directeur technique
    Inscrit en
    Septembre 2006
    Messages
    5 914
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5 914
    Points : 12 572
    Points
    12 572
    Par défaut
    Citation Envoyé par ratapapa
    Si je comprend bien ta requete tout se fait en html :

    <img src="chemin/tonimage.jpg" width="100" height="50">

    Par contre je me pose une question sur cette methode : L'image entiere aux dimensions d'origine doit etre chargée pour pouvoir faire cette manip ... ça risque d'etre tres lourds avec bcp d'images de poids assez conséquent ....
    Pas de questions techniques en MP please

    Mon site perso

    Mon profil Viadeo

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    572
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Haute Vienne (Limousin)

    Informations forums :
    Inscription : Juin 2005
    Messages : 572
    Points : 716
    Points
    716
    Par défaut
    Effectivement pour optimiser après, de mémoire, il existe des librairies php (gd entre autre le gère je crois) qui permettent de n'envoyer que l'image redimensionnée.
    Tout pas mieux que tout le monde : évitez les questions techniques en mp sinon à quoi bon poster sur un forum ?

    Petite citation : "Le sage cherche la vérité, l'imbécile l'a déjà trouvée"

  5. #5
    Rédacteur
    Avatar de RideKick
    Homme Profil pro
    Directeur technique
    Inscrit en
    Septembre 2006
    Messages
    5 914
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5 914
    Points : 12 572
    Points
    12 572
    Par défaut
    Citation Envoyé par ratapapa
    Effectivement pour optimiser après, de mémoire, il existe des librairies php (gd entre autre le gère je crois) qui permettent de n'envoyer que l'image redimensionnée.
    Il me semble qu'avec GD on peut creer des miniatures ...

    debut de reponse :

    http://mtodorovic.developpez.com/php/gd/

    et

    http://pbnaigeon.developpez.com/tuto...rie-dynamique/
    Pas de questions techniques en MP please

    Mon site perso

    Mon profil Viadeo

  6. #6
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Février 2007
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 12
    Points : 1
    Points
    1
    Par défaut
    Euh... Merci pour vos reponses mais malheureusement je ne reussi toujours pas !

    J'obtient seulement ceci dans mon message:

    <img>

    En tapant cela:

    <img src="http://www.lapierrefamily.org/images/geek.jpg" width="100" height="50">



    Avez vous une idée du probleme ?

  7. #7
    Membre éprouvé
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Juin 2003
    Messages
    909
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2003
    Messages : 909
    Points : 1 014
    Points
    1 014
    Par défaut rapport hauteur/largeur
    Pour garder le rapport de dimensions entre la hauteur et la largeur, dans height et width, tu saisis en pourcentage et non des nombres

    exemple:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <?php
    $taille = "50%"; // On divise la taille de l'image par deux
    ?>
    <img src="ton_image.qqc" width="<?php echo $taille; ?>" height="<?php echo $taille?>" />
    Tu as juste à changer la valeur de $taille en laissant toujours % après la valeur et ton image sera toujours proportionnée.
    Business, Stratégie, Leadership
    Toujours à l'écoute du marché : Surtout en Suisse ! ;-)

  8. #8
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Février 2007
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 12
    Points : 1
    Points
    1
    Par défaut
    Malheureusement j'obtient toujours le <img> dans mon mgs, malgré cette methode

    Bon... pourrais-je avoir un exemple de lien avec cette impage:

    http://www.lapierrefamily.org/images/geek.jpg

    Peu importe les dimensions, c'est simple pour avoir un exemple

    Merci par avance

  9. #9
    Membre éprouvé
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Juin 2003
    Messages
    909
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2003
    Messages : 909
    Points : 1 014
    Points
    1 014
    Par défaut autre solution
    Si tu es sous Windows, tu peux ouvrir ton image dans le logiciel Paint et la redimensionner.

    Sous Linux, il existe des programmes gratuits qui sont tout à fait convenables pour retravailler les images et donc aussi les redimensionner
    Business, Stratégie, Leadership
    Toujours à l'écoute du marché : Surtout en Suisse ! ;-)

  10. #10
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Février 2007
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 12
    Points : 1
    Points
    1
    Par défaut
    En fait l'image que je souhaite redimensionner est un gif donc je ne peux pas le faire sous paint.

    Alors ce que je veux faire, c'est de pouvoir redimensionner une image prise à partir d'un site web !

  11. #11
    Membre éprouvé
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Juin 2003
    Messages
    909
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2003
    Messages : 909
    Points : 1 014
    Points
    1 014
    Par défaut
    Citation Envoyé par Deepthroat
    Alors ce que je veux faire, c'est de pouvoir redimensionner une image prise à partir d'un site web !
    Pour la redimensionner où? (sur un autre site web, sur ton ordi en local, sur ce même site web...)
    Business, Stratégie, Leadership
    Toujours à l'écoute du marché : Surtout en Suisse ! ;-)

  12. #12
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Février 2007
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 12
    Points : 1
    Points
    1
    Par défaut
    Je voudrais la redimensionner sur un autre site web en fait, sur un forum php plus preçisement...

    Tu as une idée de comment faire ?

  13. #13
    Membre éprouvé
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Juin 2003
    Messages
    909
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2003
    Messages : 909
    Points : 1 014
    Points
    1 014
    Par défaut rien à voir
    Citation Envoyé par Deepthroat
    Bonjour à tous, je souhterais savoir comment faire pour redimensionner une image sur un forum en php.

    On m'a conesillé d'utiliser la balise [img]monimage.jpg[/img] et d'essayer de jouer avec des choses telles que <HEIGHT=50 WHITE=100>...

    Enfin je sais plus si c'etait vraiment ça mais en gros je voudrais changer la taille de mon image.


    Merci par avance pour votre aide
    En fait, ta demande n'a rien à voir avec ton premier post!!! Si tu avais dès le début précisé cela je t'aurais tout de suite répondu.

    Voici un exemple de code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <html>
    <head></head>
    <body>
    <img src="http://www.unsiteweb.fr/images/animation.gif" width="40%" height="30%" />
    </body>
    </html>
    Inutile de te dire que tu dois adapter l'URL dans src pour ton image. J'ai testé avec une URL sur un site Internet et ça fonctionne très bien y compris le redimensionnement.
    Business, Stratégie, Leadership
    Toujours à l'écoute du marché : Surtout en Suisse ! ;-)

  14. #14
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Février 2007
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 12
    Points : 1
    Points
    1
    Par défaut
    Oups je suis desolé, je pensais que l'operation serait la même en fait.

    Mais ce que je ne comprends toujours pas c'est que lorsque je rentre ce code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <html>
    <head></head>
    <body>
    <img src="http://www.unsiteweb.fr/images/animation.gif" width="40%" height="30%" />
    </body>
    </html>
    Rien ne se passe, je ne devrais pas pourtant voir apparaître un gif ?

  15. #15
    Membre éprouvé
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Juin 2003
    Messages
    909
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2003
    Messages : 909
    Points : 1 014
    Points
    1 014
    Par défaut normalement oui
    Chez moi, ça fonctionne en tout cas
    Business, Stratégie, Leadership
    Toujours à l'écoute du marché : Surtout en Suisse ! ;-)

  16. #16
    Membre éprouvé
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    1 012
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 1 012
    Points : 1 093
    Points
    1 093
    Par défaut
    certains navigateurs (je ne sais plus lesquels) ne gèrent pas la balise img avec des pourcentages. seuls les pixels sont autorisés.

    solution : rechercher la taille de l'image avec la fonction getimagesize (ne nécessite pas la librairie gd) : exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    list($largeur,$hauteur,$type) = getimagesize($foto);
    et tu redimensionnes ton image :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $hauteur_affichee = 100; // pour 100 pixels
    $largeur_affichee = $largeur * $hauteur_affichee / $hauteur ;
    à l'affichage
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo '<img src="chemin/tonimage.jpg" width="', $largeur_affichee, 'px" height="', $hauteur_affichee, 'px">';
    si comme tu le dis ton image n'apparaît pas, c'est qu'il y a un problème dans ton chemin

    et enfin je tiens à souligner que cela ne redimensionne pas ton image, cela ne fait que redimensionner la taille lors de l'affichage. et je pense que tu devrais créer des miniatures (nécessite la librairie gd) pour éviter de charger des images de grandes dimensions si ce n'est pas nécessaire

  17. #17
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Février 2007
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 12
    Points : 1
    Points
    1
    Par défaut
    Hum... D'accord je vois, mais c'est possible d'avoir un exemple avec une image ? car à vrai dire je n'arrive pas à comprendre la methode à suivre

  18. #18
    Membre éprouvé
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    1 012
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 1 012
    Points : 1 093
    Points
    1 093
    Par défaut
    tu compiles le code que je t'ai donné :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    $foto = 'chemin/tonimage.jpg';
    // assures-toi que le chemin existe et est correct, et que l'image existe ...
    list($largeur,$hauteur,$type) = getimagesize($foto);
    $hauteur_affichee = 100; // si tu souhaites une hauteur de 100 pixels
    $largeur_affichee = $largeur * $hauteur_affichee / $hauteur ;
    echo '<img src="', $foto, '" width="', $largeur_affichee, 'px" height="', $hauteur_affichee, 'px">';
    Ainsi toutes tes images feront 100 de hauteur, mais comme dit précédemment, cela ne redimensionne pas ton image, cela ne fait que redimensionner la taille lors de l'affichage.

    Mais ci cette page est souvent appelée, je te conseille de créer des miniatures.
    Je te mets ci-dessous ma fonction servant à créer des miniatures (elle vaut ce qu'elle vaut, il doit y avoir d'autres exemples sur le net :
    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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    function miniature_make ($fid)
    	{
    	$foto = DOSSIER_PHOTOS. '_foto/' .$fid;
    	if ( file_exists($foto) )
    		{
    		// L'ORIGINALE EXISTE : CREATION DE LA MINIATURE
    		// dimension de la photo originale
    		list($breedte,$hoogte,$type) = getimagesize($foto);
    		// dimension de la miniature (selon portrait, paysage ou carrée)
    		if ( $breedte == $hoogte ) $hauteur = 128; elseif ( $breedte > $hoogte ) $hauteur = 96; else $hauteur = 128;
    		$largeur = round ( $breedte/$hoogte*$hauteur);
    		// création des sources et destination
    		switch ($type)
    			{
    			// La photo est la source
    			case 1: $src = imagecreatefromgif($foto); break;
    			case 2: $src = imagecreatefromjpeg($foto); break;
    			case 3: $src = imagecreatefrompng($foto); break;
    			default : exit;
    			}
    		$dst = imagecreatetruecolor($largeur, $hauteur); // On crée la miniature vide
    		// création et enregistrement de la miniature
    		imagecopyresampled($dst, $src, 0, 0, 0, 0, $largeur, $hauteur, $breedte, $hoogte);
    		$mini = DOSSIER_PHOTOS. '_mini/!' .$fid;
    		switch ($type)
    			{
    			// La photo est la source
    			case 1: imagegif($dst, $mini); break;
    			case 2: imagejpeg($dst, $mini); break;
    			case 3: imagepng($dst, $mini); break;
    			}
    		}
    	}
    Quelques remarques :
    • $fid est le nom de la photo
    • j'ai deux dossiers : un pour la photo d'origine, stockée dans le dossier DOSSIER_PHOTOS. '_foto/', et l'autre pour les miniatures, stockées dans DOSSIER_PHOTOS. '_mini/'
    • La miniature possède le même nom que l'originale, sauf que je lui mets un ! devant, d'où '_mini/!'
    • Mes miniatures ont les dimensions suivantes : portrait hauteur 128, paysage hauteur 96, carrée 128x128
    • Si l'originale n'existe pas, il ne se passe rien
    Avant d'appeler cette fonction, je teste l'existence ou non de la miniature avec le code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    	$mini = DOSSIER_PHOTOS. '_mini/!' .$fid;
    	if ( !file_exists($mini) ) miniature_make ($fid);
    Cela pourrait être inséré dans la fonction, mais pour des raisons qui me sont propres je l'ai externalisé à la fonction

    Cette fonction exige la librairie gd, assures-toi qu'elle est activée et que ton hébergeur l'autorise

  19. #19
    Membre éclairé Avatar de |PaRa-BoL
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    738
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 738
    Points : 876
    Points
    876
    Par défaut
    Deepthroat, je crois que tu t'emmeles les pinceaux là...

    Ta demande est peut être pour poster une image sur un forum qui n'est pas à toi, tu ne parles peut etre pas de programmation mais de balise bbcode ?

  20. #20
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Février 2007
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 12
    Points : 1
    Points
    1
    Par défaut
    |PaRa-BoL>Oui voila, enfait je souhaite juste placer un gif dans un post d'un forum qui n'est pas à moi, une balise bbcode me serait alors plus utile je pense car je me sens vite depasser par les explications de francis m

Discussions similaires

  1. Création de forum php avec pma
    Par Kylen dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 4
    Dernier message: 01/08/2005, 10h47

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