尝试使用target =“ _ blank”属性,但它在我的本地目录中返回一个位置。
标签:
<a class="badge badge-primary p-2" role="button" href="<?php echo $row['linkContent']; ?>" target="_blank" rel="noopener noreferrer">Link</a>
返回此错误:
“未找到对象!在此服务器上未找到所请求的URL。引荐页上的链接似乎有误或已过时......”
在修改它之后,当我在href标记中附加“ https://”时,它可以很好地工作,但是我不想这样做,因为有些人可能会粘贴带有现有标记的链接。
例如,这可行:如果$ row ['linkContent'] = stackoverflow.com ||输出:https://stackoverflow.com
<a class="badge badge-primary p-2" role="button" href="https://<?php echo $row['linkContent']; ?>" target="_blank" rel="noopener noreferrer">Link</a>
不起作用:如果$ row ['linkContent'] = https://stackoverflow.com ||输出:https://https//stackoverflow.com
<a class="badge badge-primary p-2" role="button" href="https://<?php echo $row['linkContent']; ?>" target="_blank" rel="noopener noreferrer">Link</a>
更奇怪的是,一天前,此确切的代码有效(没有将href =“ https://附加到href标签上),现在却无效了。为什么会这样,无论linkContent变量中是否包含“ stackoverflow.com”或“ https://stackoverflow.com”,我该如何使其正常工作。
答案 0 :(得分:-1)
也许您可以在href=
部分之后实现一些php逻辑,如下所示:
<?php if (strpos($row['linkContent'],'https://') === false) { echo 'https://' . $row['linkContent']; } else { echo $row['linkContent']; } ?>
这将检查链接中是否包含https://
部分,否则将在链接中添加前缀。
如果您喜欢上述if语句的输出,则可以进一步改进它以做更多事情并解决您的问题。
祝你好运