首先提到我发现与此类似的问题有可能的解决方案或因重复但没有解决方案而关闭。
要将变量从JavaScript
to传递给我,php
我决定这样做Ajax
:
<script type="text/javascript">
function ejecutar(){
console.log("Inicia");
var count = 5;
$.ajax({
url: "index.php",
type: "POST",
data: {num:count},
success : function(json) {
console.log("success");
},
error : function(xhr, status) {
console.log("error "+" xhr: "+xhr+" Status: "+status);
},
complete : function(xhr, status) {
console.log("complete "+" xhr: "+xhr+" Status: "+status);
console.log("count = "+count);
console.log("num = "+num);
}
});
console.log("Fin");
}
</script>
所以我想得到变量的值php
:
<?php
if(isset($_POST['num'])){
echo "num = ".$identificador;
}else{
echo "variable vacia";
}
?>
这是我的完整文件index.php
:
<!DOCTYPE html>
<html>
<head>
<title>Ajax con php</title>
<meta charset="utf-8">
<script src="js/jquery-3.2.1.min"></script>
<script type="text/javascript">
function ejecutar(){
console.log("Inicia");
var count = 5;
$.ajax({
url: "index.php",
type: "POST",
data: {num:count},
success : function(json) {
console.log("success");
},
error : function(xhr, status) {
console.log("error "+" xhr: "+xhr+" Status: "+status);
},
complete : function(xhr, status) {
console.log("complete "+" xhr: "+xhr+" Status: "+status);
console.log("count = "+count);
console.log("num = "+num);
}
});
console.log("Fin");
}
</script>
</head>
<body>
<?php
if(isset($_POST['num'])){
echo "num = ".$identificador;
}else{
echo "variable vacia";
}
?>
<button type="button" onclick="ejecutar();">Ejecutar</button>
</body>
</html>
我在 Google Chrome 开发者工具控制台中得到的结果如下:
最后提到这是我第一次这样做,所以如果我遗漏了一些基本或简单的东西,请道歉
具体错误一目了然,如:
$identificador
它将显示未定义变量错误的变量。num
因为您将它用作您从中访问clave
的变量的值。count
PHP
ajax
. 因此,第一个解决方案是先声明它并初始化它,但这没有意义,因为除了发送值的键之外,它不会用于任何事情。ajax
同一个文件时,它也会PHP
返回内容HTML
,最好创建另一个文件仅用于数据处理,PHP
并且它会在其中发生变化,url
例如ajax
只有test.php
您的代码会执行PHP
或剪切exit
完成执行并将代码放在开头html
,我推荐第一个选项,创建一个新文件您的代码将是: