Javascript 如何通过ajax将js变量传递给php

Javascript 如何通过ajax将js变量传递给php,javascript,php,jquery,ajax,Javascript,Php,Jquery,Ajax,您好,我是js新手,我一直关注通过ajax向php传递变量的问题 <script> $date = "123"; $.ajax({ url: './record.php', type: "POST", dataType:'text', data: ({'date': date}),

您好,我是js新手,我一直关注通过ajax向php传递变量的问题

 <script>
            $date = "123";
            $.ajax({
                url: './record.php', 
                type: "POST",
                dataType:'text', 
                data: ({'date': date}),
                success: function(data){
                    console.log("successfully");
                }
            }); 
</script>

$date=“123”;
$.ajax({
url:“./record.php”,
类型:“POST”,
数据类型:'text',
数据:({'date':date}),
成功:功能(数据){
console.log(“成功”);
}
}); 
下面是我在record.php文件中的代码

<?php
session_start();
if(!empty($_POST['date'])){
    //$hello = 'hh';
    $_SESSION['date'] = $_POST['date'];
    echo($_SESSION['date']);
}else{
    echo "its empty(var)";
}

?>


页面总是打印出“它的空(var)”,我检查了控制台,它显示“成功”。。。我已经在这个问题上呆了几个小时,找了很多类似的帖子,但我仍然找不到问题出在哪里。有人能看一下吗?我也已经加载了jQuery库。

您将js变量与php变量混合,js变量用
var
声明,php变量用
$fieldname
声明

<script>
            var date = "123";
            $.ajax({
                url: './record.php', 
                type: "POST",
                dataType:'text', 
                data: {'date': date},
                success: function(data){
                    console.log("successfully");
                }
            }); 
</script>

var date=“123”;
$.ajax({
url:“./record.php”,
类型:“POST”,
数据类型:'text',
数据:{'date':date},
成功:功能(数据){
console.log(“成功”);
}
}); 

将js变量与php变量混合,js变量用
var
声明,php变量用
$fieldname

<script>
            var date = "123";
            $.ajax({
                url: './record.php', 
                type: "POST",
                dataType:'text', 
                data: {'date': date},
                success: function(data){
                    console.log("successfully");
                }
            }); 
</script>

var date=“123”;
$.ajax({
url:“./record.php”,
类型:“POST”,
数据类型:'text',
数据:{'date':date},
成功:功能(数据){
console.log(“成功”);
}
}); 

如果希望在Site javascript中使用PHP变量,则应首先定义PHP变量,然后将其分配到js中

<?php $date = "123"; ?>';

<script>

            var date=<?php echo $date; ?>';
            $.ajax({
                url: './record.php', 
                type: "POST",
                dataType:'text', 
                data: ({'date': date}),
                success: function(data){
                    console.log("successfully");
                }
            }); 
</script>
”;
var日期=';
$.ajax({
url:“./record.php”,
类型:“POST”,
数据类型:'text',
数据:({'date':date}),
成功:功能(数据){
console.log(“成功”);
}
}); 

希望它能对您有所帮助。

如果您想在Site javascript中使用PHP变量,您应该先定义PHP变量,然后将其添加到js中

<?php $date = "123"; ?>';

<script>

            var date=<?php echo $date; ?>';
            $.ajax({
                url: './record.php', 
                type: "POST",
                dataType:'text', 
                data: ({'date': date}),
                success: function(data){
                    console.log("successfully");
                }
            }); 
</script>
”;
var日期=';
$.ajax({
url:“./record.php”,
类型:“POST”,
数据类型:'text',
数据:({'date':date}),
成功:功能(数据){
console.log(“成功”);
}
}); 
希望它能帮助您。

您不能将服务器(php)和客户端(js)混用

你可能会喜欢这个

<?php $var = 0?>

然后在html中创建

您不能将服务器(php)和客户端(js)混用

你可能会喜欢这个

<?php $var = 0?>

然后在html中创建


您正在声明
$date
并将ajax作为
date
传递

试试这个:

<script>
        var date = "123";
        $.ajax({
            url: './record.php', 
            type: "POST",
            dataType:'text', 
            data: {'date': date},
            success: function(data){
                console.log("successfully");
            }
        }); 
</script>

var date=“123”;
$.ajax({
url:“./record.php”,
类型:“POST”,
数据类型:'text',
数据:{'date':date},
成功:功能(数据){
console.log(“成功”);
}
}); 

您正在声明
$date
并将ajax作为
date
传递

试试这个:

<script>
        var date = "123";
        $.ajax({
            url: './record.php', 
            type: "POST",
            dataType:'text', 
            data: {'date': date},
            success: function(data){
                console.log("successfully");
            }
        }); 
</script>

var date=“123”;
$.ajax({
url:“./record.php”,
类型:“POST”,
数据类型:'text',
数据:{'date':date},
成功:功能(数据){
console.log(“成功”);
}
}); 

var语句在非严格环境中重要吗?--啊。当第二个日期与第一个日期不匹配时,它会这样做……是的,因为否则它将如何理解它是一个js变量,或者不忘记;之后,试试看now@Exprator当然是这样。不过,您是正确的,OP传递了一个未定义的
date
变量,因为他们将其定义为
$date
。var语句在非严格环境中重要吗?--啊。当第二个日期与第一个日期不匹配时,它会这样做……是的,因为否则它将如何理解它是一个js变量,或者不忘记;之后,试试看now@Exprator当然,你是对的,OP传递了一个未定义的
date
变量,因为他们将其定义为
$date
。这只是一个输入错误。您正在设置一个名为
$date
的变量,但正在发送一个名为
date
的变量。这只是一个输入错误。您正在设置名为
$date
的变量,但正在发送名为
date
的变量。