Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/422.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用jquery从sessionStorage读取并发送到php时删除引号_Javascript_Php_Jquery_Sessionstorage - Fatal编程技术网

Javascript 使用jquery从sessionStorage读取并发送到php时删除引号

Javascript 使用jquery从sessionStorage读取并发送到php时删除引号,javascript,php,jquery,sessionstorage,Javascript,Php,Jquery,Sessionstorage,在一个较长的过程中,我将在会话存储中存储不同的值。最后,我希望读取所有数据并使用ajax将其发送到我的php后端。问题是php似乎接受了包括引号在内的所有值。以下是我得到的: // Reading data from storage var imgb = sessionStorage.getItem("img_b_id"); .... // perpare data var oData = { imgb: imgb, ... }; // Send

在一个较长的过程中,我将在会话存储中存储不同的值。最后,我希望读取所有数据并使用ajax将其发送到我的php后端。问题是php似乎接受了包括引号在内的所有值。以下是我得到的:

// Reading data from storage
var imgb = sessionStorage.getItem("img_b_id");
....
// perpare data
var oData = {
            imgb: imgb,
            ...
};

// Sending data
$.post( "../php/direct/create.php", oData).done(function(data) {
    if(data==true) {
        window.open("step5.php", "_self");
    } else {
        alert("Error: " + data.toString()); 
    }
});
这很好用。但是,php将使用引号读取imbg的值。例如:

echo $_POST['imgb'];
/* Returns "asd" instead of asd
下图显示我的数据存储时没有引号(chrome sessionstorage屏幕截图)

你对如何解决这个问题有什么建议吗。我现在替换了引号,但我想从根本上解决这个问题…

我已经尝试了你的代码(使用Firefox和Chrome)和

打印不带引号的字符串。 考虑到即使在会话存储中设置了一个数字,例如

sessionStorage.setItem("img_b_id", 100);
PHP在服务器上以字符串形式接收该值,因此可以使用PHP函数intval()、floatval()等对其进行转换


为什么不将数据存储/发送为JSON字符串?imgb:imbg应该是imgb:imgb吗?当然可以-在实际代码中sry imbg=imgb。我应该如何以及为什么将其作为json字符串发送?如前所述,实际数据更多,由许多重定向、页面链接等组成。我唯一的问题是引用
sessionStorage.setItem("img_b_id", 100);