在javascript中将会话从jquery设置为session

时间:2016-10-13 08:43:41

标签: php jquery

我在php中有一个页面来执行查询。当我需要使用jquery的会话从另一个页面的参数。那么,如何在jquery中的session中设置php会话。请检查我的代码并给我解决方案。感谢...

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script src="https://code.ciphertrick.com/demo/jquerysession/js/jquerysession.js?d56ac9"></script>
<script>
$(document).ready(function(){ 
var sDecode = $.session.get("sesDecode"); 
alert(sDecode);      
}); 
</script> 
<?php
include('connection.php');  
$content= ==> how to get " sDecode " ???
$upd = mysql_query("UPDATE t_modules set content='$content' where id_t_modules='3'") or die(mysql_error());  
?>

4 个答案:

答案 0 :(得分:0)

你可以使用ajax将参数发送到像这样的

这样的php文件
$.ajax({
        url: "connection.php", 
        data: "Session="+$.session.get("sesDecode"), 
        type: "POST", 
        dataType: 'json',
        success: function (e) {
            console.log(JSON.stringify(e));
        },
        error:function(e){
            console.log(JSON.stringify(e));
        }
    });

答案 1 :(得分:0)

请注意,这两个解决方案都需要您检查输入,因为用户可能会对其进行修改。

使用Ajax

获取sDecode的最佳方式可能是通过jQuery.post()(AJAX)将其发送到将注册会话值的PHP页面(在对其进行适当的检查之后)。

$.post('session.php', { d: sDecode }, function (response) {
      alert(response);
});

你可以通过PHP获得它:

$sDecode = $_POST["d"]; // Please test the input here!

您可能必须使用.serialize(),然后在PHP中对其进行反序列化,具体取决于内容以及您如何对待它。

使用重定向

您只需重定向到一个页面并直接将其作为GET值传输:

window.location.href=”session.php?d="+sDecode;

然后在session.php页面上,您将使用以下代码阅读它:

$sDecode = $_GET["d"]; // Please test the input here!

答案 2 :(得分:-1)

您可以让PHP从会话变量填写Javascript变量。

<?php session_start(); ?>
<html>
...
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script>
$(document).ready(function() {
    var sDecode = <?php echo json_encode($_SESSION['sDecode']); ?>;
    alert(sDecode);
</script>

答案 3 :(得分:-1)

PHP在Jquery之前执行,因此在从session获取参数后使用ajax来执行查询