![](/img/trans.png)
[英]How do you input a javascript variable into php function using ajax?
[英]How do you input javascript variable into php script?
我正在尝试获取一个调用带有输入的php函数的函数。
javascript函数(picNum是一个整数):
function hello(picNum) {
var pictureNumber = picNum;
var phpFunc = "<?php
include 'otherfile.php';
otherFileFunc(" + pictureNumber + ") //This is where the problem is, the input(pictureNumber) wont go through
?>";
echo phpFunc;
}
otherfile.php
<?php
function otherFileFunc($i) {
$final = $i + 1;
echo $final;
}
?>
这个代码几乎说如果你做onclick =“hello(1)”那么输出或phpFunc应该是2,因为你在otherfile.php中添加一个,但无论输入输出总是1所以我猜我标记的地方的输入没有通过。
不要告诉我它没有工作,因为它做到了。 如果我把一个整数而不是“+ pictureNumber +”它完美地工作!
任何帮助表示赞赏:)
不幸的是,你无法从javascript调用php。
Php是从服务器运行的,javascript是在客户端上运行的(通常,例外是node.js.但是即使在node.js的实例中,也没有使用php,因为javascript已经取代了它的功能)
如果你需要让javascript“调用”一个服务器函数,你需要查看ajax请求,以便服务器可以运行一个函数并将其返回给客户端。
你必须使用Ajax兄弟:
使用Javascript:
function hello(picNum) {
var pictureNumber = picNum;
$.ajax({
url: "otherfile.php",
data: {"picNum":pictureNumber},
type:'post',
dataType:'json',
success: function(output_string){
PictureNumber = output_string['picturenumber'];
alert(PictureNumber);
}
});
}
PHP otherfile.php:
$picNum = $_POST['picNum'];
function otherFileFunc($pic){
$final = $pic + 1;
return $final;
}
$outputnumber = function($picNum);
$array = ('picturenumber' => $outputnumber);
echo json_encode($array);
注意:未经测试
编辑,测试:
JavaScript的:
function hello(picNum) {
var pictureNumber = picNum;
$.ajax({
url: "otherfile.php",
data: {"picNum":pictureNumber},
type:'post',
dataType:'json',
success: function(output_string){
pictureNumber = output_string['picturenumber'];
alert(pictureNumber);
}
});
}
hello(1); //sample
PHP otherfile.php:
$picNum = $_POST['picNum'];
$picNum = 1;
function otherFileFunc($pic){
$final = $pic + 1;
return $final;
}
$outputnumber = otherFileFunc($picNum);
$array = array('picturenumber' => $outputnumber);
echo json_encode($array);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.