如何将 json 结果插入 WordPress 表中?

Posted

技术标签:

【中文标题】如何将 json 结果插入 WordPress 表中?【英文标题】:How can I insert json results into a WordPress table? 【发布时间】:2018-04-05 17:25:05 【问题描述】:

我在 WordPress 中有一个生成 json 的自定义页面,我想插入到 WordPress 数据库中的自定义表中。我该怎么做?

"horarios":["dia":"2017-10-25","hora_inicio":"17:00","hora_termino":"17:00","dia":"2017-10-26","hora_inicio":"13:30","hora_termino":"16:00"]

谢谢。

【问题讨论】:

为什么自定义页面不直接将数据放入数据库? json 对象可以是数据类型 Varchar。所以它可以像任何 varchar 值一样插入 结果在 javascript/json 中,我不确定如何将这些值传递到同一个自定义页面中。 请查看How do I ask a good question。你已经尝试过什么来做到这一点?这不是编码或辅导服务。问题应显示研究证据和自己解决问题的尝试、您的特定编码相关问题的清晰概述以及Minimal, Complete, and Verifiable example 中的相关代码,以便我们提供帮助。 【参考方案1】:

将表格数据插入到 Wordpress 自定义表格中。

第一步:将mysql表转成json文件 https://www.csvjson.com/sql2json

第二步:导出表格并粘贴到https://www.csvjson.com/sql2json

/**
 * Continents 
 */
SET FOREIGN_KEY_CHECKS=0;

-- ----------------------------
-- Table structure for `continents`
-- ----------------------------
DROP TABLE IF EXISTS `continents`;
CREATE TABLE `continents` (
  `code` char(2) NOT NULL COMMENT 'Continent code',
  `name` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`code`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=COMPACT;

-- ----------------------------
-- Records of continents
-- ----------------------------
INSERT INTO `continents` VALUES ('AF', 'Africa');
INSERT INTO `continents` VALUES ('AN', 'Antarctica');
INSERT INTO `continents` VALUES ('AS', 'Asia');
INSERT INTO `continents` VALUES ('EU', 'Europe');
INSERT INTO `continents` VALUES ('NA', 'North America');
INSERT INTO `continents` VALUES ('OC', 'Oceania');
INSERT INTO `continents` VALUES ('SA', 'South America');
INSERT INTO `continents` VALUES ('??', NULL);

步骤 3.创建目录数据

第四步,将json文件放入data目录。

第5步:将下面的代码放入插件主插件文件或anywhare eles中。

register_activation_hook(__FILE__, 'plugin_name_install_data');

function plugin_name_install_data()

    global $wpdb;

    $table_name = $wpdb->prefix . 'continents'; 

    $contactjsondata = file_get_contents(plugin_dir_path( __FILE__ ) . 'data/continents.json');
    $data = json_decode($contactjsondata, true);

    foreach ($data['continents'] as $single_data) 

        $item=array(
            'code'=> $single_data['code'],
            'name' => $single_data['name']
        );

        $result = $wpdb->insert($table_name, $item);

    

【讨论】:

以上是关于如何将 json 结果插入 WordPress 表中?的主要内容,如果未能解决你的问题,请参考以下文章

Wordpress:Ajax 无法插入、查询和结果数据

如何使用PHP Wordpress将沙箱Paypal返回值插入MySQL表?

如何在 Wordpress 中插入数据?

从自定义表单将数据插入 Wordpress 数据库表

如何使用 Python 将嵌套字典/json 插入 MySQL 表

如何将一个表的查询结果插入到另一个表中?