drupal导入数据的实现方法
发布时间:2014-11-03 16:59:02 作者:佚名 我要评论
这篇文章主要为大家介绍了drupal导入数据的实现方法,非常具有实用价值,需要的朋友可以参考下
本文实例讲述了drupal导入数据的实现方法。分享给大家供大家参考。具体实现方法如下:
一、问题:
最近一个项目是用drupal实现的。最后,面临一些书的数据的导入。找了些drupal的模块,不太好用。 最后的方法是创建一个基本页面,PHP Code导入数据。
二、解决方法:
首先在源数据那头,把数据通过JSON方式发布出来,在这个代码里,通过HTTP获取数据,并用JSON解码。得到数据以后, 生成drupal的node,用 node_save 保存到drupal里。 这种方法有安全性的问题,所以在不使用的时候,记得加止阻止代码执行的语句。
页面代码如下:
复制代码
代码如下:<scriptlanguage="javascript">
functionimportConfirm(){
if(confirm("确认信息")){
document.location="/<?phpechocurrent_path()?>/import";
}
}
</script></p> <p><?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);
}
}
}
?> </p> <p><a href="javascript:importConfirm()">导入书</a>
functionimportConfirm(){
if(confirm("确认信息")){
document.location="/<?phpechocurrent_path()?>/import";
}
}
</script></p> <p><?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);
}
}
}
?> </p> <p><a href="javascript:importConfirm()">导入书</a>
希望本文所述对大家的drupal程序设计有所帮助。
相关文章
- 真是不看不知道,Drupal 真奇妙。很多使用CMS内容管理系统的人可能都会知道一款国外的CMS系统:Drupal 。在我们传统的想象中CMS除了能做内容文章站外,其他还有图片站,分2010-01-24
- 对页面和静态资源的启用缓存和Gzip压缩传输.2010-01-24
- drupal模块开发分析,方便想要drupal模块开发的朋友2012-12-06
drupal 自定义表单调用autocomplete主标签实现代码
drupal 自定义表单调用autocomplete主标签实现代码,需要的朋友可以参考下2012-12-06- 这篇文章主要为大家介绍了drupal创建拖动排序表格的方法,包括了具体的步骤与实现代码,具有一定的参考借鉴价值,需要的朋友可以参考下2014-11-03
drupal的workbench moderatoin模块对node的修改方法
这篇文章主要为大家介绍了drupal的workbench moderatoin模块对node的修改方法,包含了对workbench_moderation成员变量的分析,具有一定的参考借鉴价值,需要的朋友可以参考下2014-11-03- 这篇文章主要为大家介绍了drupal实现输出可点击表头排序表格的方法,包括了表的定义、SQL语句、表内容及生成HTML文件等,需要的朋友可以参考下2014-11-03
- 这篇文章主要为大家介绍了drupal文件系统,讲述了drupal文件系统的分类,重点讲述了钩子函数的用法,需要的朋友可以参考下2014-11-03
- 这篇文章主要为大家介绍了drupal按分类进行文章排序的实现方法,较为详细的分析了drupal文件组织结构与实现文章排序的方法,非常具有实用价值,需要的朋友可以参考下2014-11-03
drupal之hook_link和hook_link_alter钩子函数解析
这篇文章主要为大家介绍了drupal中hook_link和hook_link_alter钩子函数,实例分析了钩子函数的具体用法,具有一定的参考借鉴价值,需要的朋友可以参考下2014-11-03
最新评论