在页面上显示多个(输入的)链接

时间:2015-10-10 23:13:50

标签: php html arrays input output

我正在尝试编写一个网页程序(在以前的PHP页面中称为member.php)需要2个输入:网站的标题和URL。然后在提交时,它会将您带到另一个页面,并且应该在链接到URL的<a href>中打印出标题。但是当我回到member.php页面输入另一个链接时,我之前输入的上一个链接被我的新输入写入。为什么会这样?

$titles = array();
$urls = array();

$title = $_POST['title'];
$url = $_POST['url'];

if ($url && $title) {
    array_push($titles, $title);
    array_push($urls, $url);
}

for ($i = 0; $i < count($urls); ++$i) {
    $getTitle = $titles[$i];
    $getUrl = $urls[$i];

    if ($getTitle && $getUrl) {
        echo "<br>".'<a href = "http://' . $getUrl . '" target="_blank">'.$getTitle.' </a>' . "<br>";       
    }
}

2 个答案:

答案 0 :(得分:0)

每次运行member.php时,都在运行

$urls = array();

正在重置数组的内容。它不会覆盖前一个,前一个只是在您离开后不再在内存中。

答案 1 :(得分:0)

编写一个简单的IF语句,以确保您不会重写数组:

if (!$urls) {
$url = $_POST['url'];
}

有。现在只有在它不存在时才会被写入。只需添加到此数组,现在您知道它已经存在。

另外,请考虑使用会话变量。它们会在用户离开您的页面时过期。

You can read about sessions here.