Aller au contenu

Afficher URL d'une image en dessous de [RESOLU]


Sujets conseillés

Guest dubastiste
Posté (modifié)

Bonsoir les gars,

je voudrais savoir si il y a une commande, un java script ou un script cgi-php pour afficher automatiquement l'url d'une image en dessous de l'image en question.

J'ai cherché sur ce forum (et sur d'autres traitant du javascript pour tout avouer :blush: ) mais je n'ai rien trouvé.

Exemple

- je suis sur une page html, je place cette image :

:hourra:

Ce que je voudrais, c'est qu'en dessous de l'image ca marque :

http://www.webmaster-hub.com/style_emotico...ault/IMSTP3.gif

Question

Est-ce possible ? Si oui, comment ? :rolleyes:

Merci d'avance.

Modifié par dubastiste
Posté

Salut ;)

Ne mets pas les gars dans ton topic, tu auras 20% de moins de réponses :P

Tes images sortent d'où en fait ? Tu les mets toi même dans ton code HTML (dans ce cas là, je ne comprendrais pas l'intérêt d'avoir un script automatique qui écrit les URLs :D) ou c'est à partir d'un script PHP ?

Si c'est à partir d'un script PHP, c'est que tu as l'url, donc c'est également facile à écrire... Je n'arrive pas à voir la difficulté en fait de ce que tu veux faire :D

Guest dubastiste
Posté
Ne mets pas les gars dans ton topic, tu auras 20% de moins de réponses

lol désolé les filles ! 20%... quand même :unsure:

Oui c'est un script php qui affiche les images et je voudrais que le lien soit écrit automatiquement en dessous pour que les Internautes puissent facilement se l'envoyer sans envoyer forcement la page php, vous comprenez les gars(es) , oups :blush:

Guest dubastiste
Posté

Merci xavier mais petit problème, l'image ne s'affiche plus, par contre c'est la balise qui s'affiche. Il m'aurait fallu les deux , l'image et la balise en dessous voir mieux : pas de balise qui s'affiche mais bien l'url complet de l'image.

C'est pas si simple cette histoire :o

Posté

Re ;)

Toute manière, le :after n'est pas pris en compte par IE (pour changer, n'est ce pas Dudu ;)), donc tu peux oublier...

Mais les URL des images, tu les tires d'une bdd ? Si tu mets echo "<img src='$url'>$url"; ça marche pas ?

Guest dubastiste
Posté
Toute manière, le :after n'est pas pris en compte par IE (pour changer, n'est ce pas Dudu ), donc tu peux oublier...

vi ! ;)

Mais les URL des images, tu les tires d'une bdd ? Si tu mets echo "<img src='$url'>$url"; ça marche pas ?

non ca ne viens pas d'une bdd

-

Je crois que le plus simple serait un exemple concret de ce que je veux, je vais donc fournir un url ( Je n'ai pas d'action pour ce site ;) )

http://smallcapitalbusiness.com/imagetext/

Une fois le texte dans l'image, je voudrais afficher l'url en dessous de l'image pour que les Internautes puissent l'envoyer à leurs amis.

Posté

AAAahaHAaahhhhhAahaHAh !!

Je viens de comprendre ! Voilà, tu as oublié de préciser que c'était une image dynamique que tu voulais... Tu crées en fait une image avec GD en inscrustant du texte dans une image, et tu voudrais qu'il y ait un lien direct vers cette image créée ?

Oula, ça change tout là... Tu dois en fait à partir de GD créer une image directement dans un dossier, et la garder par exemple une semaine avant qu'elle ne soit effacée (comme avec humour.com par exemple... sans faire de pub non plus)

Je te conseille le tutoriel du site du zéro sur la création d'images dynamiques, qui t'expliquera comment créer une image dans un dossier, et donc tu pourras donner l'url ;)

Voilà !

Posté

Si j'ai bien compris, c'est un peu comme ça ?

Le nom de l'image en paramètre GET, un file_exists puis un affichage de l'image et du lien en rapport au nom de site et du nom de fichier.

Prévoir une boucle si il y a plusieurs image à afficher.

Guest dubastiste
Posté

sarc, oui c'est ça mais le script que j'ai n'éfface pas les images mais il me convient, c'est juste que je voudrais indiquer l'url de l'image en dessous :unsure:

lupucide: Oui, c'est ca que je voudrais, tu vois il y l'image puis le "lien permanent" en dessous, il y a un petit code facile pour faire ça ou bien ca releve de la programmation php ?

On avance ;)

Merci pour votre aide ! :up:

Posté

Faudrait qu'on voie ton script pour dire là... Ca doit pas être bien compliqué si on peut voir le script qui te fait l'image ;)

Guest dubastiste
Posté

Oki :)

Le script est en deux fichiers. (+ image comme exemple smp.jpg)

( DL: http://smallcapitalbusiness.com/downloading.php?i=1 )

img.php:

<?php
//=========== change the text to display in the image
//$text = 'mydomain.com';
//$imgfile="smp.jpg";
$font = 'arial.ttf';
$ext=substr($imgfile,-3);
$ext=strtolower($ext);

if($ext=="jpg" || $ext=="jpe") $im=@imagecreatefromjpeg("$imgfile");
elseif ($ext=="gif") $im=@imagecreatefromgif("$imgfile");
else {print "Unknown image format"; exit;}

if (!$im) { /* See if it failed */
      $im = ImageCreate (150, 30); /* Create a blank image */
      $bgc = ImageColorAllocate ($im, 255, 255, 255);
      $tc  = ImageColorAllocate ($im, 0, 0, 0);
      ImageFilledRectangle ($im, 0, 0, 150, 30, $bgc);
      /* Output an errmsg */
      ImageString($im, 1, 5, 5, "Error loading $imgfile", $tc);
return $im;
  }

$x=imagesx($im);
$y=imagesy($im);
$fontsize=$x/20;
$fontsize=floor($fontsize);
if($fontsize<10) $fontsize=10;

$white = imagecolorallocate($im, 255, 255, 255);
$black = imagecolorallocate($im, 0, 0, 0);

imagettftext($im, $fontsize, 0, 12, $fontsize+8, $black, $font, $text);
imagettftext($im, $fontsize, 0, 10, $fontsize+6, $white, $font, $text);

imagettftext($im, 10, 0, 12, $y-8, $white, $font, "Powered by SmallCapitalBusiness.com");
imagettftext($im, 10, 0, 10, $y-7, $black, $font, "Powered by SmallCapitalBusiness.com");
if($ext=="gif")
{
header("Content-type: image/gif");
imageGIF($im);
}
else
{
header("Content-type: image/jpeg");
imagejpeg($im);

}
imagedetroy($im);
?>

Index.php

<html>

<head>
<meta http-equiv="Content-Language" content="en-us">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<meta name="GENERATOR" content="Microsoft FrontPage 4.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<title>Free Script - DEMO Add caption to your image</title>
</head>

<body style="font-family: Arial; font-size: 10pt">

<p><b>DEMO</b><br>
Add caption to the image </p>
Type your domain name or any text here
<form method="POST" action="index.php">
<input type="text" name="text" size="20" maxlength="25"><br>
 <input type="submit" value="Submit" name="submit">
</form>
<br>

<?php
$imgfile="smp.jpg";
if(isset($text) && $text!="")
print "<img border='0' src='img.php?imgfile=smp.jpg&text=$text' width='635' height='459'>";
else
print "<img border='0' src='smp.jpg' width='635' height='459'>";
?>


</body>

</html>

Si vous trouvez une combine, c'est merveilleux sinon au pire,

j'expliquerais aux Internautes la méthode pour trouver l'url de l'image (clic droit, propriété....) :unsure:

Posté

C'est remoi...

Un petit hors-sujet pour commencer :

Il y a des erreurs dans le script

if($ext=="jpg" || $ext=="jpe") $im=@imagecreatefromjpeg("$imgfile");

Remplace par

if($ext=="jpg" || $ext=="peg") $im=@imagecreatefromjpeg("$imgfile");

Chez moi les trois dernières lettres de jpeg sont peg, et non jpe... Enfin bon !

imagedetroy($im);

Ca non plus, ça risque pas de donner grand chose...

Le problème de ce script pour ce que tu veux faire, c'est qu'à chaque fois que ta page est affichée, l'image sera créée ! C'est donc impossible d'afficher directement l'image, vu qu'elle n'est pas stockée sur ton ftp... Tu comprends ce que je veux dire ? C'est pour ça que je t'avais donné un lien vers le site du zéro qui explique très bien ça !

La meilleure solution serait donc :

1. d'insérer dans une bdd le texte affiché, la date et de mettre un id en auto-increment

2. de créer l'image et de la stocker dans ton disque dur, en vérifiant préalablement si l'image avec ce texte avait déjà été créée.

Par contre, ça demande un peu plus de connaissances... Si tu veux faire simple, fais ce que t'as dis, si tu veux un peu plus te compliquer ta tâche (et goûter au remontage de manche, si tu ne connais pas le PHP !), bah, fais ce que j'ai proposé :P

Voilà bonne chance ;)

Guest dubastiste
Posté

Je vais faire la petite modif et utiliser ce script comme il l'est pour le moment.

Le problème de ce script pour ce que tu veux faire, c'est qu'à chaque fois que ta page est affichée, l'image sera créée ! C'est donc impossible d'afficher directement l'image, vu qu'elle n'est pas stockée sur ton ftp... Tu comprends ce que je veux dire ?

Oui je comprends, c'est parce que, comme le navigateur lui sait donner l'url de l'image dans ses propriété, je pensais qu'il existait un javascript ou quelque chose pour afficher l'information recueillie par le navigateur sur la page. (je suis un grand rêveur) :blink:

Maintenant, c'est vrai que je connais des scripts de galleries d'images qui eux affiche l'url de l'image mais comme tu le dis, dans ce cas là, les images sont stockées sur ftp, ce qui n'est pas le cas avec ce script.

Merci à tous !

A la prochaine question :P

( ou réponse, qui sait... Je ne dois pas être le seul débutant sur le forum ;) )

Posté

Bah tu peux toujours faire un lien sans stocker l'image, mais ça risque de faire un peu mal au processeur du serveur s'il y a trop de monde...

Tu mets juste ça :

if(isset($text) && $text!="")
{
print "<img border='0' src='img.php?imgfile=smp.jpg&text=$text' width='635' height='459'>";
echo "http://www.urldusite.com/img.php?imgfile=smp.jpg&text=$text";
echo "<a href='http://www.urldusite.com/img.php?imgfile=smp.jpg&text=$text'>Lien vers l'image</a>";
}
else
print "<img border='0' src='smp.jpg' width='635' height='459'>";

Guest dubastiste
Posté

Je quitte pour aujourd'hui mais j'essaye ce code demain.

Je vous tiens au courant et je te remercie sarc, c'est très sympa ! :up:

Guest dubastiste
Posté

Bonjour,

désolé du retard (semaine chargée), je viens signaler que ca fonctionne à merveille, GRAND merci pour ton aide sarc !

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...