如何通过点击链接$ _POST从一个页面到另一个页面的信息?没有表单或提交框,只要最终用户点击链接,它就会在打开的链接中发布相关信息。
伪代码,但是:
//On first page
<a href="./page.php" onclick="post" value="var">Click me!</a>
...
//On the page the above links to
$variable = $_POST["var"];
我考虑的是以下内容,虽然不是很漂亮,但仍有效。我喜欢它所以它是一个帖子,而不是一个获得。
//On first page
<a href="./page.php?var=<?php echo $variable; ?>">Click me!</a>
...
//On second page
$variable = $_GET["var"];
答案 0 :(得分:11)
试试这个:
<a href="link.php" class="post">submit content using link</a>
<script type="text/javascript">
jQuery(document).ready(function($){
$(".post").on("click",function(){
$.ajax({
url: "http://www.yourwebsite.com/page.php",
type: "POST",
data: { name: "John", location: "Boston" },
success: function(response){
//do action
},
error: function(){
// do action
}
});
});
});
</script>
<强> Reference Link 强>
答案 1 :(得分:5)
不确定为什么不这样做:
//在第一页
<a href="./page.php?var=value">Click me!</a>
... //在页面上面链接到
$variable = $_GET['var'];
<强>更新强>
根据您的上述评论:
GET显示URL中的信息,而POST则显示 不。我不希望最终用户只是编辑URL 他们希望的价值。 @popnoodles,当用户点击超链接时, 它将指向一个新页面。 - riista
您正在尝试为安全原因执行此操作,因为 方法是使用GET或AJAX进行此操作的好方法 >不安全,因为两个都可以被篡改。您需要重新考虑您要保护的内容以及如何检查提交的数据是否有效。
答案 2 :(得分:3)
在GET和POST之间做出选择很简单
所以,你必须在你的情况下使用GET,而不是POST 安全问题在这里无关紧要。
答案 3 :(得分:1)
添加Click事件侦听器并将请求发送到另一个页面。
答案 4 :(得分:1)
你需要包装你的选择&#34;在一个表格中,并使用这样的按钮..
<style type="text/css">
/* just styling the overall menu */
#my-post-link ul{
list-style-type:none;
text-align:center;
background-color:cadetblue;
font-size:1.1em;
font-weight:600;
padding:0.45em;
line-height: 1.75em;
}
/* following line would allow you to create a horizontal menu */
#my-post-link ul li{display:inline;white-space:nowrap;}
#my-post-link button {
background-color: transparent; /* <-- removes the gray button */
border: none; /* <-- removes the border around the button */
color: white;
font-size: 1.15em;
font-weight: 600;
}
#my-post-link button:hover {
background-color: white;
color: cadetblue;
cursor: pointer; /* <-- makes the button text act like a link on hover */
}
</style>
<form id="myForm" name="myForm" method="post">
<div id="my-post-link"><ul>
<li><button name="select-me" type="submit" value="var" onclick=\"myForm.action='./page.php';return true;\">Click me!</li>
</ul></div>
</form>
这将POST值&#34; var&#34;使用键&#34;选择我&#34;到page.php,所以你会用...读取该变量
$variable = $_POST["select-me"];
您还可以使用伪类对按钮进行进一步设置样式,使其更像常规文本链接,但我认为您可以理解。
如果您想查看哪些变量回到您的页面,您可以将此代码放在某处:
foreach ($_POST as $key => $value) {
$i++;
${$key} = $value;
echo "<!-- //[{$i}] {$key}:{$value} -->\n";
}
您还可以使用var_dump($ _ POST)查看POSTed数据
答案 5 :(得分:0)
你也可以
pald
答案 6 :(得分:0)
比方说,您想单击一个链接以注销,并且希望通过邮寄方式进行注销,这样更安全。你可以这样做。
<a class="nav-link" href="logout.php" data-method="post">Logout (John)</a>
只需将data-method =“ post”添加到链接属性。