2014-03-24 93 views
-2

我无法将值或值数组传递到我的PHP脚本中。当点击页面上的提交按钮,下面的函数执行:无法将值传递给PHP函数

$('#rangeSubmit').click(function (e) { 
     e.preventDefault(); 
     $.ajax({ 
      type: 'POST', 
      url: 'http://.../test.php', 
      data: {test1:"DONE"}, 
      success: function(data) 
      { 
       $("#myDiv").html(data); 
      } 
    }); 
}); 

PHP脚本是这样的:

<?php 

    echo $argv[1]; //should return the first item in the array of values passed to the php function? 
    var_dump($_SERVER['argv']); 

?> 

而且这个脚本只是返回“NULL”,而不是我发送的值到脚本。有任何想法吗?

+4

你的价值将被存储在'$ _POST' –

+2

有存在 –

+0

一个Ajax请求没有PHP函数是一个普通的HTTP请求时,它是完全一样的键入网址到浏览器的地址栏中。你通常不会使用'$ argv',你会吗? – deceze

回答

2

$ ARGV [1]是参照参数从命令行传递,如:

php page.php argument 

这个调用page.php文件与 “参数” 作为参数比用$的argv [1] acessible。

要获得发布变量使用$ _POST [$ name]。在你的情况下使用:

echo $_POST['test1']; 
1

试;)

<?php 
    echo $_POST['test1'];  
    var_dump($_POST); 
?> 
0

使用POST

type: 'POST', --->POST REQUEST 

var_dump($_POST['test1']); 
+0

没有'argv'出现 –

+0

是啊纠正它 –

+0

@feroz,今天艰难的人群,刚刚投票给你。祝你好运1K! –

1

使用$_POST['test1'];test.php获得通过的jQuery传递的值。

1

肮脏的,但可能会有帮助,如果你的PHP安装允许的话,你可以简单地尝试使用EXEC()。在接收脚本中,提取POST参数并将它们格式化为一个命令字符串,然后将其传递给exec()以运行。

$filein =$_POST[$arg1]; 
$fileout =$_POST[$arg2]; 

$return=exec("php target.php -i $filein -o $fileout ");