Javascript 将数组存储到WordPress数据库
我创建了一个应用程序,它托管在WordPress网站上,可以自定义页面上的所有内容。当用户单击“保存”时,如何将具有用户定义ID的数组存储到WordPress数据库?然后,用户可以转到他们的“自定义页面”页面,并查看他们最初保存时设置的ID命名的所有自定义页面。单击他们的一个自定义页面时,它将加载与他们设置的ID关联的数组的可自定义页面 编辑 不再使用JSON编码方法。这就是我所处的位置Javascript 将数组存储到WordPress数据库,javascript,php,sql,wordpress,Javascript,Php,Sql,Wordpress,我创建了一个应用程序,它托管在WordPress网站上,可以自定义页面上的所有内容。当用户单击“保存”时,如何将具有用户定义ID的数组存储到WordPress数据库?然后,用户可以转到他们的“自定义页面”页面,并查看他们最初保存时设置的ID命名的所有自定义页面。单击他们的一个自定义页面时,它将加载与他们设置的ID关联的数组的可自定义页面 编辑 不再使用JSON编码方法。这就是我所处的位置 var array = []; $('img').click(function(){ var id =
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形式存储的大型数据集来说,这将是一场噩梦。自定义表还有其他优点,我也经常使用它们。只要找出最适合你们的方法。作者元或选项表就可以了。自定义表还有其他优点,我也经常使用它们。想一想什么最适合你。