我的问题是如何在同一页面上传递查询字符串变量而不用 php 刷新页面?我的代码如下:
<a href="?id=1&pid=2"><img src="a.jpg"></a>
<?php
$a = $_GET['id'];
$b = $_GET['pid'];
?>
请帮我解决这个问题
我的问题是如何在同一页面上传递查询字符串变量而不用 php 刷新页面?我的代码如下:
<a href="?id=1&pid=2"><img src="a.jpg"></a>
<?php
$a = $_GET['id'];
$b = $_GET['pid'];
?>
请帮我解决这个问题
你不能。
PHP 需要在服务器上执行,因此您必须使用 AJAX 并相应地更新您的页面,或者只是刷新您的页面。
您可以通过向服务器发送 AJAX 请求。Ajax 是一种通过 Javascript 发送异步请求的方法。请注意,jQuery 有一个很好的库。
使用jquery来解决这个问题。通过在 jquery 中使用 $.ajax,您可以在不刷新页面的情况下完成您需要的工作。
<html>
<head>
<title>Test</title>
<meta name="" content="">
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function() {
$("#image_id").click(function(){
var dataString = 'a=10&b=20';
$.ajax({
type:'POST',
url:'foo.php',
data:dataString,
success:function(data) {
if(data=="Something") {
// Do Something
} else {
// Do Something
}
}
});
});
});
</script>
</head>
<body>
<img id="image_id" src="images/bg.jpg" />
</body>
</html>
然后在“foo.php”页面中执行此操作
if(isset($_POST['a'])) {
// DO SOMETHING
}
记住要发送到“数据”的东西
success:function(data)
必须在 foo.php 页面中回显