我想通过脚本打开文件中列出的几个网页。 我应该如何打开这些链接?
我试图通过while()
做到这一点。除非表达式中没有链接,否则它仅适用于href而不适用于window.open()
。
<?php
// Datei öffnen zum lesen und schreiben open and read
$handle = fopen (".../urls.txt", "r");
while ( $inhalt = fgets ($handle, 4096 ))
{
echo "<li> $inhalt "; ?>
<script> window.open("<?php echo $inhalt; ?>","_blank") </script>
<a href="<?php echo $inhalt; ?>" target="_blank">TitleM</a>
<?php
}
fclose($handle);
?>
我想打开例如url.txt中列出的7个新窗口中的7个不同链接。
到href
,它们都以while()
列出。
但是window.open()
仅在新窗口中打开第7个链接。
前6个链接将被忽略。
但是,如果window.open()
没有$inhalt
,它将打开七个新窗口。
非常感谢您的帮助!
答案 0 :(得分:0)
问题是window.open()
的第二个参数。第二个参数是窗口名称。如果您在每次迭代中都设置了相同的名称,它将始终以相同的窗口为目标。
为Windows提供不同的名称:
<script> window.open("<?= $inhalt; ?>", "<?= md5($inhalt) ?>") </script>
这将使用URL的md5哈希为Windows提供唯一的名称。
您可以详细了解window.open()
here。
旁注:
您应该检查浏览器是否阻止了弹出窗口。
关闭您的<li>
标签也是一个好习惯(即使它是可选的)。
答案 1 :(得分:0)
换行符包含在fgets的返回值中。 因此,您应该trim $吸入。
<script>
window.open("<?= trim($inhalt) ?>", "<?= md5($inhalt) ?>");
</script>
答案 2 :(得分:0)
与此同时,我找到了解决方案:
<script> window.open(<?php echo "$inhalt";?>, "<?= md5($inhalt)?>") </script>
并且txt文件中的链接必须位于“”之间。 样品: “ domain1.tld” “ domain2.tld” ... “ domain7.tld”
现在可以使用了。每个链接都在单独的窗口中打开。