我正在尝试将page1.html中的php变量(其中包含我从其他表单获取的php变量)传递给page2.php使用ajax,但它不起作用,所以我需要你的帮助。
代码:
<script>
var url = 'page2.php';
$("#save").click( function() {
$.ajax({
url : url,
type: 'post',
data : {
admin : <?php echo $admin; ?>,
gname : <?php echo $gname; ?>,
filename : docname,
content : encodeURIComponent(editor.getValue())
}
});
});
</script>
数据filename
和content
已成功发送,但admin
和gname
未成功发送。
提前致谢。
更新
<?php
if(isset($_GET['admin'])) {
$admin = $_GET['admin'];
}
if(isset($_GET['gname'])) {
$gname = $_GET['gname'];
}
?>
此代码是我从我想要发送的php变量,从无关到另一个形式的问题。
答案 0 :(得分:3)
在这里,伙计,用这个替换你的脚本代码。
<script>
var url = 'page2.php';
var admin = '<?php echo $admin; ?>';
var gname = '<?php echo $gname; ?>';
$("#save").click( function() {
$.ajax({
url : url,
type: 'post',
data : {
admin : admin,
gname : gname,
filename : docname,
content : encodeURIComponent(editor.getValue())
}
});
});
</script>
答案 1 :(得分:1)
您使用的是post
类型,因此必须使用php中的$_POST
<强> PHP 强>
<?php
if(isset($_POST['admin'])) {
$admin = $_POST['admin'];
}
if(isset($_POST['gname'])) {
$gname = $_POST['gname'];
}
?>
答案 2 :(得分:0)
您正在使用$_GET['admin']
,它用于获取使用GET方法提供的参数。您应该使用$_POST['admin']
,因为您已将POST设置为JS代码中的http请求类型。
答案 3 :(得分:0)
每个人都说你在混合POST和GET。但它抓住了另一件可能让你烦恼的事情。这些变量是字符串吗?如果他们是,也许你错过了撇号/单引号。
<script>
var url = 'page2.php';
$("#save").click( function() {
$.ajax({
url : url,
type: 'post',
data : {
admin : '<?php echo $admin; ?>',
gname : '<?php echo $gname; ?>',
filename : docname,
content : encodeURIComponent(editor.getValue())
}
});
});
</script>>
答案 4 :(得分:0)
您的以下代码
<?php
if(isset($_GET['admin'])) {
$admin = $_GET['admin'];
}
if(isset($_GET['gname'])) {
$gname = $_GET['gname'];
}
?>
将替换为
<?php
if(isset($_POST['admin'])) {
$admin = $_POST['admin'];
}
if(isset($_POST['gname'])) {
$gname = $_POST['gname'];
}
?>
答案 5 :(得分:0)
使用get in PHP脚本时,您正在发送POST参数。另一个问题是你没有在ajax请求中使用带有 $ admin 和 $ gname 变量的引号。
请尝试以下方法:
<script>
var url = 'page2.php';
$("#save").click( function() {
$.ajax({
url : url,
type: 'post',
data : {
admin : '<?php echo $admin; ?>',
gname : '<?php echo $gname; ?>',
filename : docname,
content : encodeURIComponent(editor.getValue())
}
});
});
</script>
PHP脚本:
<?php
if(isset($_POST['admin'])) {
$admin = $_POST['admin'];
}
if(isset($_POST['gname'])) {
$gname = $_POST['gname'];
}
?>
检查它是否对您有所帮助。