Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/373.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/284.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 将数组存储到WordPress数据库_Javascript_Php_Sql_Wordpress - Fatal编程技术网

Javascript 将数组存储到WordPress数据库

Javascript 将数组存储到WordPress数据库,javascript,php,sql,wordpress,Javascript,Php,Sql,Wordpress,我创建了一个应用程序,它托管在WordPress网站上,可以自定义页面上的所有内容。当用户单击“保存”时,如何将具有用户定义ID的数组存储到WordPress数据库?然后,用户可以转到他们的“自定义页面”页面,并查看他们最初保存时设置的ID命名的所有自定义页面。单击他们的一个自定义页面时,它将加载与他们设置的ID关联的数组的可自定义页面 编辑 不再使用JSON编码方法。这就是我所处的位置 var array = []; $('img').click(function(){ var id =

我创建了一个应用程序,它托管在WordPress网站上,可以自定义页面上的所有内容。当用户单击“保存”时,如何将具有用户定义ID的数组存储到WordPress数据库?然后,用户可以转到他们的“自定义页面”页面,并查看他们最初保存时设置的ID命名的所有自定义页面。单击他们的一个自定义页面时,它将加载与他们设置的ID关联的数组的可自定义页面

编辑

不再使用JSON编码方法。这就是我所处的位置

var array = [];

$('img').click(function(){
 var id = $(this).attr('id');
 array.push(id);

});

$('#sendQuote').click(function(e) {
  e.preventDefault();

$.ajax({
  url:"readJson.php",
  method: "post",
  data: { myBuild: JSON.stringify( array ) },
  success: function(res){
    console.log(res);
  }
})
});
ReadJson.php

$array = $_POST['myBuild'];
print_r($array);

global $wpdb;
将此信息发布到wp_meta或自定义表中有什么想法吗?

您有两种选择

使用
json\u Encode
将数组编码为json,然后使用
json\u decode

通过
Serialize
序列化阵列,通过
unserialize
取消序列化阵列。您有两个选项

使用
json\u Encode
将数组编码为json,然后使用
json\u decode


通过
Serialize
序列化数组,并通过
unserialize

取消序列化,这样做将无法查询数组中的某些项。当然你可以把所有的东西都取出来然后过滤,但是效率不高。而且这些不是唯一的选择。。。可能最普遍接受的方法是将每个项存储在自己的表中。您完全可以根据正在搜索的数据对强json进行查询。您不能索引值,但可以搜索值。这取决于您需要什么,在这种情况下,它听起来像是一个配置变量的集合,通常不是您需要查询的一组值。我知道至少在ms sql中,json存储为纯文本,因此失去了查询和搜索字段值的能力。但同样,您可以在数据库中查询JSON中的字符串,在请求提供的示例中,他也不需要查询值。它们只是存储配置。您可以在数据库中查询JSON中的字符串。。。。这就是你所能做的。你不能说“给我这个数组中的对象谁的值等于这个”。Idk关于mariadb,但mysql也是这样,您必须将json存储为纯文本。是的,我知道只获取整个字符串是很容易的,但是对于以json形式存储的大型数据集来说,这将是一场噩梦。这样做将无法查询数组中的某些项。当然你可以把所有的东西都取出来然后过滤,但是效率不高。而且这些不是唯一的选择。。。可能最普遍接受的方法是将每个项存储在自己的表中。您完全可以根据正在搜索的数据对强json进行查询。您不能索引值,但可以搜索值。这取决于您需要什么,在这种情况下,它听起来像是一个配置变量的集合,通常不是您需要查询的一组值。我知道至少在ms sql中,json存储为纯文本,因此失去了查询和搜索字段值的能力。但同样,您可以在数据库中查询JSON中的字符串,在请求提供的示例中,他也不需要查询值。它们只是存储配置。您可以在数据库中查询JSON中的字符串。。。。这就是你所能做的。你不能说“给我这个数组中的对象谁的值等于这个”。Idk关于mariadb,但mysql也是这样,您必须将json存储为纯文本。是的,我知道只获取整个字符串很容易,但是对于以json形式存储的大型数据集来说,这将是一场噩梦。自定义表还有其他优点,我也经常使用它们。只要找出最适合你们的方法。作者元或选项表就可以了。自定义表还有其他优点,我也经常使用它们。想一想什么最适合你。