从sql表中提取链接作为可点击链接

时间:2012-03-05 12:58:43

标签: php mysql sql

已经有一段时间了,并且无法弄清楚所以我认为id来到知道的人。 我的php / sql是马马虎虎但是......这就是我想要做的事情/想出来......

我有一个数据库设置来接收消息(任何种类)并且工作正常。用户在字段中输入数据,点击发送,并记录消息。

但是当用户输入例如" http://www.google.com "的链接时 它存放在数据库中就好了但是当它打印回页面时,它会恢复原状 文本,我想要的是当页面返回带有链接的邮件时,该链接是实时的和可点击的。

我用Google搜索了#$ off但我猜我正在寻找错误的东西(或者我错过了一些我不知道的东西。)

任何提示 / * 方向 *等,很高兴接受。另外,我不介意做工作/研究,所以如果你有链接,那么也会采取这些措施。

先谢谢。

5 个答案:

答案 0 :(得分:1)

您需要使用正则表达式来检测链接并将其转换为<a href="$link">...</a> 看到答案:

PHP validation/regex for URL

答案 1 :(得分:1)

您需要解析纯文本消息才能找到链接。然后,通过添加锚标记(<a>)来更改链接文本。

This link可以帮到你。

答案 2 :(得分:0)

您可能需要查看http://www.php.net/manual/en/function.preg-replace.php,以便用正确的内容替换正则表达式。

您希望使用典型的html链接语法(例如<a href="...">...</a>

)替换每个网站

答案 3 :(得分:0)

<a href="<?php echo "your_field"; ?>"> <?php echo "your_field"; ?> </a>

答案 4 :(得分:0)

这样的东西应该有用(我从我为客户编写的一些代码中得到了这个):

$query = mysql_query("SELECT * FROM wcordersinfo WHERE dealer_id = '" . $dealer_id . "' && drawing_num = " . $_GET['reference_id'] . "");
    while ($orders = mysql_fetch_array($query)) {
        if ($orders['drawing_num'] != '') {
            $link_open = '<a href="http://www.example.com/dealers/order-details.php?reference_id=' . $orders['drawing_num'] . '">';
            $link_close = '</a>';
        } else {
            $link_open = $link_close = '';
        }

然后您要显示内容的位置:

<?php echo "<li>' . $link_start . $orders['carrier'] . $link_end . '</li>"; ?>