是否可以隐藏我在php中使用的URL链接,以便不向用户显示以防止用户更改URL链接?我在另一个php页面上使用get函数来检索包ID。
示例我有一个像这样的php URL代码:
<a href="banner.php?packageID=1234" >
当用户点击链接并指向URL时,是否可以隐藏&#34; 1234&#34;并且只在URL链接上显示banner.php?packageID =?
请指导我完成这个。感谢
答案 0 :(得分:1)
不,这是不可能的。但是,您可以使用重写规则更改请求网址,使其类似于: banner.php / 1234
另一种方法是使用带有表单的发布请求,如下所示:
<form method="post" action="banner.php">
<input type="hidden" name="packageID" value="1234">
<button type="submit">Go</button>
</form>
在这种情况下,只有按钮可见。该按钮的样式可以像链接一样,
答案 1 :(得分:0)
您可以使用.htaccess文件执行此操作,添加以下代码
您的.htaccess文件
options -multiviews
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^banner/([^/.]+)?$ banner.php?packageID=$1&%{QUERY_STRING}
在PHP中
<a href="banner/1234" >
答案 2 :(得分:0)
简单来说,根本无法从URL中隐藏该值。以下是您的其他方法:
方法1
使用更好的网址,例如banner/1234
方法2
用户标题值而不是像banner/banner-title
这样的ID,我建议这样做。
答案 3 :(得分:0)
您可以以加密格式传递packageID,以便用户无法猜测或更改它。
答案 4 :(得分:0)
我已检查过您的问题。无法使用CSS隐藏html标记中的特定属性。 您还可以看到以下帖子: How to hide href attribute of <A> tag via css when using window.print
上面的其他选项,您可以使用加密格式或网址重写的packageID。
还有一个选项,你可以尝试使用javascript或jquery,如下所示:
<a href="http://example.com/banner.php?packageID=" rel="1234" id="testurl" >testing</a>
<script type="text/javascript">
jQuery(document).ready(function(){
jQuery("#testurl").click(function(){
var rel = jQuery(this).attr('rel');
var href = jQuery(this).attr('href');
window.location = href+rel;
return false;
});
});
</script>
答案 5 :(得分:0)
你也可以使用它:
<a href="javascript:;" onclick="window.location='banner.php?packageID=1234'" >
或
<a href="banner.php?packageID=" onclick="window.location='banner.php?packageID=1234';return false;" >
但我认为这是隐藏网址的最佳方法,