Bonjour à tous, voici mon petit problème,

Je dispose d'un site avec une tribune/chat, petit problème quand quelqu'un poste plusieurs fois la même url ceci s'affiche : http://uppix.net/wqdI8a.png. Évidemment si on ne poste qu'une fois l'url, tout fonctionne parfaitement. http://uppix.net/YxNMX2.png

Voici le code :

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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
function transform_url($text){
 
    // On recherche les urls dans $text
    $pattern = "/((http|https|ftp):\/\/[a-z0-9;\/\?:@=\&\$\-_\.\+!*'\(\),~%#]+)/is";
    preg_match_all($pattern, $text, $arrayUrl);
 
    // Pour chaque url trouvée, on remplace par un contenu cliquable
    foreach($arrayUrl[0] as $url){
 
        // On va découper l'url
        $urlParse = parse_url($url);
        if(substr($urlParse['host'], 0, 4) == "www.") $urlParse['host'] = substr($urlParse['host'], 4);
 
        // Si l'url contient un '.' (il y a une extension)
        if(strrchr($url, '.')){
 
            // On détermine l'extension, donc le type de fichier
            $ext_t = strtolower(substr(strrchr($url, '.'), 1));
            if(substr($ext_t, -1)=='/') $ext_t = substr($ext_t , 0, strlen($ext_t)-1);
 
            // L'url est une image :
            if($ext_t=='jpeg'||$ext_t=='jpg'||$ext_t=='bmp'||$ext_t=='gif'||$ext_t=='png'||$ext_t=='tga')$show = 'image';
 
            // L'url est une vidéo :
            elseif($ext_t=='mpeg'||$ext_t=='mpg'||$ext_t=='avi'||$ext_t=='wmv'||$ext_t=='mov')$show = 'video';
 
            // L'url est un son :
            elseif($ext_t=='mp3'||$ext_t=='ogg'||$ext_t=='wma'||$ext_t=='wav'||$ext_t=='ra')$show = 'audio';
 
            // L'url est une archive :
            elseif($ext_t=='zip'||$ext_t=='rar'||$ext_t=='gz'||$ext_t=='ace'||$ext_t=='7z')$show = 'archive';
 
            // L'url est un executable :
            elseif($ext_t=='exe'||$ext_t=='bat')$show = 'exe';
 
            // L'url est du flash :
            elseif($ext_t=='swf')$show = 'flash';
 
            // On ne sait pas ce que contient l'url...
            else $show = 'url';
 
            // On remplace le texte....
            $replacementtext = '';
            if($show == 'image'){
                $replacementtext = "<a href=\"".$url."\" rel=\"lightbox\" title=\"".$url."\"><img src=\"imgs/Picture.png\" /></a> <a href=\"$url\" alt=\"$url\" title=\"".$url."\">$urlParse[host]</a>";
			}elseif($show == 'url'){
				if($urlParse['host'] == 'amazon.fr') {
					$replacementtext = '<a href="'.$url.'?&tag=leorlandos-21">'.$urlParse['host'].'</a>';
				} elseif($urlParse['host'] == 'amazon.co.uk') {
					$replacementtext = '<a href="'.$url.'?&tag=leorlandos-21">'.$urlParse['host'].'</a>';
				} elseif($urlParse['host'] == 'amazon.com') {
					$replacementtext = '<a href="'.$url.'?&tag=leorlandos-21">'.$urlParse['host'].'</a>';
				} else {
					$replacementtext = " <a href=\"$url\" alt=\"$url\"  title=\"".$url."\">$urlParse[host]</a>";
				}
            }else{
            	$replacementtext = " <img src=\"imgs/$show.png\" /> <a href=\"$url\" alt=\"$url\"  title=\"".$url."\">$urlParse[host]</a>";
 
            }
 
            $text = str_replace($url, $replacementtext, $text);
 
		}else{
 
            $show = 'url';
            $text = str_replace($url, "<a href=\"$url\" alt=\"$url\">$show</a>", $text);
 
 
        }
    }
    return $text;
}
Pourriez-vous m'aider et m'indiquer d'où vient le problème ?

D'avance merci !
Bonne soirée