我在文件test.php上有一个按钮
<?php
$url="http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
?>
<input type="button" name="btn" value="Download" onclick="alert('<?php echo $url; ?>')">
单击文件时,它会提醒页面的网址。
我有另一页,test2.php。
我希望提示的网址在test2.php
中显示出来我该如何做到这一点?
答案 0 :(得分:4)
传递数据的方法有很多种:
你的价值:
<?php $url="http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']; ?>
<form method="POST" action="page2.php">
<input type="hidden" name="url" value="<?php echo $url;?>">
<p><input type="submit" value="Submit"></p>
</form>
将GET <{p>更改为method="POST"
至method="GET"
<a href="page2.php?url=<?php echo urlencode($url);?>">Download</a>
<?php
session_start(); //First line of page1 and page2
$_SESSION['url']=$url;
?>
然后根据您选择的方法,使用全局$_POST
和$_GET
或$_SESSION
获取值。
<div id="result"></div>
<script type="text/javascript">
if(typeof(Storage)!=="undefined")
{
if (localStorage.passthis){
//Already set, perhaps set it here on page1 and and display it here on page2
}
else{ //Not set
localStorage.passthis = window.location.href;
}
document.getElementById("result").innerHTML="Passed from page1.php: " + localStorage.passthis;
}else{
//No web storage
}
</script>
希望它有所帮助,我建议你在提出问题之前先进行一些研究。 php.net是你的朋友。
答案 1 :(得分:1)
您可以通过表格GET或POST发送数据:http://www.w3schools.com/php/php_forms.asp
Example URL: http://yoursite.com/page2.php?frompageone=Hello
echo $_GET['frompageone']; // Echos "Hello"
POST比GET更安全,这只是一个简单的例子。
答案 2 :(得分:1)
根据它是一个按钮的重要程度,您可以创建一个表单,将POST中的$ url发送到test2.php。有许多变通方法,但其中一个是难以捉摸的“隐藏”输入。
test.php上的代码最终会像:
<?php $url="http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']; ?>
<form action="test2.php" method="POST">
<input type="hidden" name="url" value="<?php echo $url ?>" >
<input type="submit" name="download" value="" onclick="alert('<?php echo $url; ?>')">
</form>
虽然test2.php上的代码必须包含:
<?php $sent_url = $_POST['url'];
echo $sent_url;
?>
希望这有帮助!
梅森
P.S。有关其他方法的更多信息,请参阅this previous question。