0

我有一个 javascript 和 php 代码,它使机器人很难找到一个电子邮件地址。我已经在一个非常基本的站点上实现了它,并且它运行良好,但是在另一个具有更多元素的站点上 - 似乎出现了问题并且它不会工作。

javascript添加了mailto:and@函数

在 php 中,元素被调用并运行 javascript 以在您单击它时完成该功能——使它像一个普通的 mailto: 函数。

在 DOM 或全局元素或其他方面,我有什么遗漏吗?

我在 header.php 中调用了这个脚本:

<script type="text/javascript" src="javascript/scripts.js"></script>

脚本.js:

function blind(name,domain) {
        str = "mailto:" + name + "@" + domain;
        window.location = str;
        }

emailgen.php:

function showContacts()
{
global $debe;
    $return ="";
    $return .="
    <div>";
    $contactitems = $debe->runSql("SELECT * FROM contacts ORDER BY imp");

    for($i=0; $i<count($contactitems); $i++)
    {
            $parts = explode('@', substr($contactitems[$i][3], $pos + 0));

            $return .="
            <p><a href=\"" . $contactitems[$i][2] . "\">" . $contactitems[$i][1] . "</a><br />
            <a href=\"javascript:blind('" . $parts[0] . ",'" . $parts[1] . "')\">" .  $parts[0] . "@" . $parts[1] . "</a><br />
            </p>";  
    }

    return $return;
}

当我查看源代码时,它似乎显示正常,但由于某种原因mailto:没有调用。

emailgen.php的viewsource:

<a href="javascript:blind('name,'email.com')">name@email.com</a><br />
4

1 回答 1

3

在 之后添加单引号$parts[0] . "

<a href=\"javascript:blind('" . $parts[0] . "','" . $parts[1] . "')\">" .  $parts[0] . "@" . $parts[1] . "</a><br />
于 2013-02-25T14:25:47.433 回答