首页 > 电脑专区 > CMS教程 > 其它cms >

drupal导入数据的实现方法

来源:互联网 2023-03-14 12:48:42 192

本文实例讲述了drupal导入数据的实现方法。分享给大家供大家参考。具体实现方法如下:Ujw办公区 - 实用经验教程分享!

一、问题:Ujw办公区 - 实用经验教程分享!

最近一个项目是用drupal实现的。最后,面临一些书的数据的导入。找了些drupal的模块,不太好用。 最后的方法是创建一个基本页面,PHP Code导入数据。 Ujw办公区 - 实用经验教程分享!

二、解决方法:Ujw办公区 - 实用经验教程分享!

首先在源数据那头,把数据通过JSON方式发布出来,在这个代码里,通过HTTP获取数据,并用JSON解码。得到数据以后, 生成drupal的node,用 node_save 保存到drupal里。 这种方法有安全性的问题,所以在不使用的时候,记得加止阻止代码执行的语句。 Ujw办公区 - 实用经验教程分享!

页面代码如下: 复制代码代码如下:scriptlanguage="javascript"> functionimportConfirm(){ if(confirm("确认信息")){ document.location="/?phpechocurrent_path()?>/import"; } } /script>/?php if(arg(2)=="import") { //获取数据源的内容 $result=drupal_http_request("url"); if($result->code==200){ //JSON数据源解码 $books=json_decode(trim($result->data)); foreach($books as $book) { foreach($bookas$k=>$v){ //原数据是base64编码的,这里解码,并转换成utf8编码 $book->$k=mb_convert_encoding(base64_decode($v),"UTF8","GB2312"); } $node=newstdClass(); $node->type='ct_tushu'; //内容类型 $node->uid=1; $node->status=1; $node->language="zh-hans"; $node->created=date("Y-m-dH:i:s"); $node->field_tushuauthor_multi=array('und'=>array( array("value"=>($book->author)) )); $node->title=($book->title); $node->field_tushuisbn=array("und"=>array( array("value"=>($book->isbn)) )); node_save($node); } } } ?> /a href="javascript:importConfirm()">导入书/a>Ujw办公区 - 实用经验教程分享!

希望本文所述对大家的drupal程序设计有所帮助。Ujw办公区 - 实用经验教程分享!

以上方法由办公区教程网编辑摘抄整理自互联网可供大家参考!Ujw办公区 - 实用经验教程分享!


标签: Drupal

办公区 Copyright © 2016-2023 www.bgqu.net. Some Rights Reserved. 备案号:湘ICP备2020019561号统计代码