Rechercher : dans
Par :

Transformer une URL en lien hypertexte cliqua

Dernière réponse le 21 fév 2009 à 18:02:22 balafatch, le 20 fév 2009 à 19:45:31 
 Signaler ce message aux modérateurs

Bonjour,
J'ai trouvé sur la page http://www.commentcamarche.net/faq/sujet 891 php transformer une url en lien hypertexte cliquable

<?
$message = eregi_replace("((([ftp://])|(http(s?)://))((:alnum:|[-\%\.\?\=\#\_\:\&\/\~\+\@\,\;])*))","<a href = '\\0' target='_blank'>\\0</a>",$message);

$message = eregi_replace("(([^/])www\.|(^www\.))((:alnum:|[-\%\.\?\=\#\_\:\&\/\~\+\@\,\;])*)","\\2<a href = 'http://www.\\4' target='_blank'>www.\\4</a>",$message);
?>

et essayé de l'exploiter mais je n'y arrive pas. Est-ce bien adapté à ma page ?
______________________________________________________________________________________
<?php include("inc/header.php"); ?>
<?php include("inc/conf.php"); ?>
<?php include("inc/fonctions.php"); ?>

<?php
if($_GET['id_cat']) $id_cat=$_GET['id_cat'];
else $id_cat='';
if($_GET['id']) $id=$_GET['id'];
else $id='';
$requete = mysql_query("select * from faq_categories where id=\"$id_cat\""); ?>

<table border="0" align="center" width="<?php echo("$width_table"); ?>" cellpadding="3" cellspacing="1">
<tr>
<td align="right" class="titre" height="8">Aller à :
<select onchange="javascript:if(this.value != <?php echo $id_cat; ?>) document.location.href=this.value;">
<option value="<?php echo $page_index; ?>">Accueil</option>
<option value="<?php echo $page_ajouter_q; ?>">Ajouter une Faq</option>
<option value="<?php echo $page_recherche; ?>">Rechercher</option>
<option value="" selected>----------</option>
<?php

$requete = mysql_query("select * from faq_categories order by nom");
while($ligne = mysql_fetch_array($requete)){
$id_cat = $ligne["id"];
$nom = $ligne["nom"];
$nom = utf8_encode($nom);
echo("<option value=\"$page_afficher?id_faq=$id_cat\"");
echo(">$nom</option>");
}

?>
</select>
</td>
</tr>
<?php
$query_com = "SELECT * FROM faq_commentaires WHERE id='$id'";
$comments = mysql_query($query_com) or die("Erreur");
$nb_comments = mysql_num_rows($comments);
?>
<?php

$requete = mysql_query("select * from faq where id=\"$id\"");
while($ligne = mysql_fetch_array($requete)){
$id_q = $ligne["id"];
$titre = $ligne["titre"];
$titre = utf8_encode($titre);
$message = $ligne["message"];
$message = nl2br($message);
$message = utf8_encode($message);
$date = $ligne["date"];
$date = explode("-",$date);
$annee = $date[0];
$mois = $date[1];
$jour = $date[2];
$date = "$jour/$mois/$annee";
$lien = $ligne["lien"];

echo(" <tr>
<td>

<table border=\"0\" width=\"100%\">
<tr>
<td> $image_question <font color='#000080'><b>$titre</b></font></td>
</tr>
<tr>
<td><table width='168' height='51' border='0' bgcolor='$color_resume' align='right'>
<tr><td>");
if ($lien == ""){echo("Pas de lien utile");}
else {echo("<a href='$lien' target='_blank'>Lien utile</a>");}
echo("$lien_utile</td></tr>
<tr><td>");
if ($nb_comments == "0"){echo("<a href='$page_voir_com?id_cat=$id_cat&id=$id#formu'>Ajouter un commentaire</a>");}
else {
if ($nb_comments == "1"){echo("<a href='$page_voir_com?id_cat=$id_cat&id=$id#comment'>$nb_comments commentaire</a>");}
else {echo("<a href='$page_voir_com?id_cat=$id_cat&id=$id#comment'>$nb_comments commentaires</a>");}
}
echo("</td></tr>
<tr><td><a href='$page_envoyer?id_cat=$id_cat&id=$id#formu'>Envoyer à un(e) ami(e)</a></td></tr>
</table><br>$message<br><br></td>
</tr>
</table>");

}

?>
</table>

<?php include("inc/footer.php"); ?>
_______________________________________________________________________________________

Si oui.... qu'est ce que je ne fais pas bien ??? (j'ai essayé de le placer partout et n'importe où... mais je suis certain que l'endroit n'est pas le problème ?).

Merci d'avance vraiment beaucoup à qui saura me renseigner !

Configuration: Windows XP
Firefox 3.0.6

Meilleures réponses pour « Transformer une URL en lien hypertexte cliqua » dans :
[PHP] Transformer une URL en lien hypertexte cliquable Voir Grâce aux expressions régulières, il est possible de transformer en lien hypertexte toute URL de la forme http://URL (ou ftp://URL) ou bien commençant par www. :
[Word] Supprimer tous les liens hypertextes VoirLorsque vous copiez-collez un extrait d'une page web, vous risquez fort d'obtenir dans le texte de nombreux liens hypertextes. Voici deux solutions pour supprimer les liens hypertextes d'un document Word. 1° solution : un lien hypertexte à la...
Problème pour ouvrir les liens dans Outlook VoirSi Outlook est dans l'impossibilité d'ouvrir un lien hypertexte, ou si les liens dans les messages ouvrent l'explorateur sans charger la page Web, il suffit de suivre l'une des procédures suivantes : Méthode 1 Méthode 2 Méthode 3 Pour...
Problème pour ouvrir les liens dans Thunderbird VoirSi Mozilla Thunderbird est dans l'impossibilité d'ouvrir un lien hypertexte, il suffit de suivre la procédure suivante : lancer Internet Explorer et le mettre comme navigateur par défaut. Le cas échéant, fermer Internet Explorer, puis lancer...

1

 balafatch, le 21 fév 2009 à 18:02:22

Ceci dit j'ai dans fonctions.php bien appelée en début de la page ci-dessus :

// Transforme une URL ou une adresse e-mail en lien HTML
function lienhtml($chaine)
{
if(!eregi("(<a|<img|<script|<iframe)",$chaine))
{
$chaine=eregi_replace("(https?|ftp)://([[:alnum:]#?/&=._+-]+)","<a href=\"\\1://\\2\" target=\"_blank\">\\1://\\2</a>",$chaine);
$chaine=eregi_replace("([_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9?=-]+)+)","<A HREF=\"mailto:\\1\">\\1</A>",$chaine);
}
return $chaine;
}

Mais cela ne fonctionne pas !
Une idée ?

Répondre à balafatch
Collection CommentÇaMarche.net