我正在尝试编写一个网页程序(在以前的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>";
}
}
答案 0 :(得分:0)
每次运行member.php时,都在运行
$urls = array();
正在重置数组的内容。它不会覆盖前一个,前一个只是在您离开后不再在内存中。
答案 1 :(得分:0)
编写一个简单的IF语句,以确保您不会重写数组:
if (!$urls) {
$url = $_POST['url'];
}
有。现在只有在它不存在时才会被写入。只需添加到此数组,现在您知道它已经存在。
另外,请考虑使用会话变量。它们会在用户离开您的页面时过期。