Guest dubastiste Posté 7 Mai 2005 Posté 7 Mai 2005 (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 ) mais je n'ai rien trouvé. Exemple - je suis sur une page html, je place cette image : 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 ? Merci d'avance. Modifié 8 Mai 2005 par dubastiste
Sarc Posté 7 Mai 2005 Posté 7 Mai 2005 Salut Ne mets pas les gars dans ton topic, tu auras 20% de moins de réponses 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 ) 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
Guest dubastiste Posté 7 Mai 2005 Posté 7 Mai 2005 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 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
Xavier Posté 8 Mai 2005 Posté 8 Mai 2005 Tu peux le faire en CSS : img:after {display:block;content: attr(src);}
Guest dubastiste Posté 8 Mai 2005 Posté 8 Mai 2005 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
Sarc Posté 8 Mai 2005 Posté 8 Mai 2005 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é 8 Mai 2005 Posté 8 Mai 2005 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.
Sarc Posté 8 Mai 2005 Posté 8 Mai 2005 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à !
lupucide Posté 8 Mai 2005 Posté 8 Mai 2005 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é 8 Mai 2005 Posté 8 Mai 2005 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 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 !
Sarc Posté 8 Mai 2005 Posté 8 Mai 2005 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é 8 Mai 2005 Posté 8 Mai 2005 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é....)
Sarc Posté 8 Mai 2005 Posté 8 Mai 2005 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é Voilà bonne chance
Guest dubastiste Posté 8 Mai 2005 Posté 8 Mai 2005 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) 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 ( ou réponse, qui sait... Je ne dois pas être le seul débutant sur le forum )
Sarc Posté 8 Mai 2005 Posté 8 Mai 2005 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>";}elseprint "<img border='0' src='smp.jpg' width='635' height='459'>";
Guest dubastiste Posté 8 Mai 2005 Posté 8 Mai 2005 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 !
Guest dubastiste Posté 13 Mai 2005 Posté 13 Mai 2005 Bonjour, désolé du retard (semaine chargée), je viens signaler que ca fonctionne à merveille, GRAND merci pour ton aide sarc !
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant