<?php
header("Content-Type:text/html;charset=utf-8"); $host = $_SERVER['HTTP_HOST'];
//if ($host!="localhost" && $host!="25-99.com" && $host!="www.25-99.com") die("域名未授权"); define('IN_ECS', true); require(dirname(__FILE__) . '/includes/init.php'); $basepath = ROOT_PATH; $act = $_GET["action"];
if ($act=="post"){
//发布文章
extract ( $_POST, EXTR_OVERWRITE ); // 格式化post参数
if (!$cat_id){
if (stripos($catname,":")<1){ exit( "分类不正确" );}
}
if (! $title) { exit ( "标题不能为空" ); }
if (! $content) { exit ( "内容不能为空" ); } /* 字段列表 */
$field_list = array("title","content","author","author_email", "is_open", "keywords","cat_id","description"); $field_arr = array(
'add_time' => gmtime(),
); $field_arr['title'] = $title;
$field_arr['content'] = GetCurContent($content);
$field_arr['author'] = $author;
$field_arr['author_email'] = $author_email;
$field_arr['keywords'] = $keywords;
$field_arr['description'] = $description;
$field_arr['cat_id'] = $cat_id;
$field_arr['is_open'] = 1;
$field_arr['article_type'] = "0";
//如果上传了分类,则使用该分类
if (!empty($catname)){
$pid = "0";
$cid = "0";
$cats = explode(":",$catname);
foreach ($cats AS $cat){
if (!empty($cat) && $cat!=""){
$sql = "SELECT cat_id FROM " . $ecs->table('article_cat')." where cat_name='$cat' and parent_id=$pid";
$res=$db->query($sql);
$row = $db->fetchRow($res);
if (!empty($row))
{
$cid = $row["cat_id"];
$pid = $cid;
}
else
{
$sql = "INSERT INTO " . $ecs->table('article_cat') . " (cat_name,parent_id) VALUES ('" . addslashes($cat) . "','".$pid."')";
$db->query($sql);
$cid = $db->insert_id();
$pid = $cid;
}
}
}
$field_arr['cat_id'] = $cid;
} /* 给文章最后增加三个带有超链接的关键词 */
//取出关键字表的数据
$sql="select * from ". $GLOBALS['ecs']->table('content_key') ;
$res_k=$GLOBALS['db']->getAll($sql);
//从关键字中随机取出三个数组
$random_keys=array_rand($res_k,3);
$field_arr['content'] = $field_arr['content'].'<br/><br/>华企商城更多商品介绍:<a href="' .$res_k[$random_keys[0]]['key_url']. '">' .$res_k[$random_keys[0]]['key_name']. '</a> &nbsp;&nbsp;&nbsp;&nbsp;<a href="' .$res_k[$random_keys[1]]['key_url']. '">' .$res_k[$random_keys[1]]['key_name']. '</a>&nbsp;&nbsp;&nbsp;&nbsp;<a href="' .$res_k[$random_keys[2]]['key_url']. '">' .$res_k[$random_keys[2]]['key_name']. '</a>'; $db->autoExecute($ecs->table('article'), $field_arr, 'INSERT');
$gid = $db->insert_id(); echo("文章发布成功");
}else{
//获取分类
$sql = "select cat_id,parent_id,cat_name from ".$ecs->table('article_cat');
$rs = $db->query($sql);
if(!$rs){die("valid result!");}
echo("<select>");
while($row = $db->fetchRow($rs)){
if($row["parent_id"]==0){
echo "<option value='".$row["cat_id"]."'>".$row["cat_name"]."</option>";
}else{
echo "<option value='".$row["cat_id"]."'>----".$row["cat_name"]."</option>";
}
}
echo("</select>");
} /**
* 得到远程图片
*
* @access public
* @param goods_desc $goods_desc 要处理的内容
* @return mix 如果成功返回缩略图的路径,失败则返回false
*/
function GetCurContent($goods_desc)
{
$body = stripslashes($goods_desc);
$img_array = array();
//$body = ereg_replace("HTTP://".$_SERVER['SERVER_NAME']."/","",$body);//将源文件进行替换
preg_match_all("/src=[\"|'|\s]{0,}(http:\/\/([^>]*)\.(gif|jpg|png))/isU",$body,$img_array);
$img_array = array_unique($img_array[1]); set_time_limit(0);
$imgurl = "bdimages/upload1/".date('Ymd');
$imgpath = ROOT_PATH.$imgurl; $millisecond = date("YmdHms");
if (!file_exists($imgpath))
{
if (!make_dir($imgpath))
{
return false;
}
}
else
{ foreach($img_array as $key =>$value)
{
$value = trim($value);
$get_file = @file_get_contents($value);
$rndfilename = $imgpath."/".$millisecond.$key.".".substr($value,-3,3);
$fileurl = "http://".$_SERVER['SERVER_NAME']."/".$imgurl."/".$millisecond.$key.".".substr($value,-3,3);
// $fileurl = "/".$imgurl."/".$millisecond.$key.".".substr($value,-3,3);
if($get_file)
{
$fp = @fopen($rndfilename,"w");
@fwrite($fp,$get_file);
@fclose($fp);
}
//echo $rndfilename."<br/>".$fileurl."<br/>";
$body = str_replace($value,$fileurl,$body);;
echo $body;
}
}
$body = addslashes($body);
return $body;
} ?>

火车头采集ecshop 文章接口文件的更多相关文章

  1. ecshop init.php文件分析(转)

    <?php /** * ECSHOP 前台公用文件 */ //防止非法调用 defined-判断常量是否已定义,如果没返回false if (!defined('IN_ECS')) { die( ...

  2. 火车头采集器对接织梦cms图集发布时, 采集网上图片超时的解决方法

    背景介绍: 火车头采集器对接织梦cms图片集发布时, 对于多张(超过30张)大图片时, 经常会出现图集发布超时的情况.  问题分析: 因为php对于资源的处理有默认的超时时间30秒, 而我尝试了好多方 ...

  3. ECShop 文章添加缩略图功能

    为 ECShop 文章添加缩略图     ECShop 文章不包含缩略图比较遗憾,不过它的文章里包含一个附件上传,而且一般不会用到,这样,我们就可以改动一下,让它成为缩略图. 首先在 includes ...

  4. 前端工程化:使用 shelljs 生成 yapi 接口文件

    之前的文章介绍了使用 yapi-to-typescript (下文简称 ytt)生成接口类型定义文件,方便我们直接使用接口的请求和响应类型,能减少很多写接口类型的时间. 使用 yapi-to-type ...

  5. zw版_Halcon图像库delphi接口文件

    zw版_Halcon图像库delphi接口文件 Halcon图像库delphi接口文件,根据安装时用户设置的文件目录不同,会有所差异,笔者一般安装在delphi的import目录下.     参见:& ...

  6. ecshop init.php文件分析

    1.  ecshop init.php文件分析 2.  <?php  3.   4.  /**  5.  * ECSHOP 前台公用文件  6.  * ===================== ...

  7. 软件測试系统文章(文件夹&amp;链接在此)

    前言 我会在此账号上写一系列关于软件測试的文章,故在此置顶软件測试系列文章的文件夹和链接,以方便大家阅读! 文件夹 软件測试系列之入门篇(一) 软件測试系列之了解篇(二) 软件測试系列之黑白盒(三) ...

  8. 用Node.JS+MongoDB搭建个人博客(app.js接口文件)(二)

    app.js的GitHub地址:用力戳我然后点个star 说个题外话,THINKPHP是通过一个index.php来引入文件,所以被称为接口文件. 而NodeJS也有这样的接口文件,通常也会放在根目录 ...

  9. “必须执行Init_Clk函数,才能采集到二氧化碳接口485数据的问题”的解决

    这个问题困扰了我很长一段时间,而且如果这个问题不解决,就有一个无法调和的矛盾:执行Init_Clk函数,能采集到二氧化碳接口485数据,但是功耗大:不执行Init_Clk函数,不能采集到二氧化碳接口4 ...

随机推荐

  1. iOS网络1——NSURLConnection使用详解

    原文在此 一.整体介绍 NSURLConnection是苹果提供的原生网络访问类,但是苹果很快会将其废弃,且由NSURLSession(iOS7以后)来替代.目前使用最广泛的第三方网络框架AFNetw ...

  2. Linux用户态和内核态

    究竟什么是用户态,什么是内核态,这两个基本概念以前一直理解得不是很清楚,根本原因个人觉得是在于因为大部分时候我们在写程序时关注的重点和着眼的角度放在了实现的功能和代码的逻辑性上,先看一个例子: 1)例 ...

  3. [MySQL性能优化系列]提高缓存命中率

    1. 背景 通常情况下,能用一条sql语句完成的查询,我们尽量不用多次查询完成.因为,查询次数越多,通信开销越大.但是,分多次查询,有可能提高缓存命中率.到底使用一个复合查询还是多个独立查询,需要根据 ...

  4. 《Ansible权威指南》笔记(4)——Playbook

    七.Playbook1.语法特性如下:(1)"---"首行顶格开始(2)#号注释(3)缩进统一,不同的缩进代表不同的级别,缩进要对齐,空格和tab不能混用(4)区别大小写,键值对k ...

  5. Jsoup系列学习(1)-发送get或post请求

    简介 jsoup 是一款Java 的HTML解析器,可直接解析某个URL地址.HTML文本内容.它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据. 官 ...

  6. python 发送邮件

    # coding=utf-8 import smtplibfrom time import sleepfrom email.mime.text import MIMETextfrom email.mi ...

  7. [iOS]ReactiveCocoa安装方法

    1. 替换Ruby镜像 我们想要使用CocoaPods来安装ReactiveCocoa.由于OS X上的Ruby镜像被墙了,感谢淘宝为我们提供了国内访问镜像. $ gem sources --remo ...

  8. Chrome 扩展机制

    据说,今年9月份开始,谷歌将在Chrome浏览器中全面禁用NPAPI插件,Chrome 45以后将无法再加载NPAPI插件,并推出了一种新的机制:扩展. 其实,如果把浏览器看作一块画布的话,NPAPI ...

  9. Ubuntu15.10下华南师大锐捷认证客户端的使用详解

    本文测试Linux系统环境为Ubuntu15.10 Destop,暂未在其他系统下验证过,不代表LTS版本或较旧的版本按照本文所述方法可以100%正确使用最新的锐捷认证客户端. 本文面向对象为华南师范 ...

  10. HTTP状态码(HTTP Status Code)

    一些常见的状态码为: 200 - 服务器成功返回网页 404 - 请求的网页不存在 503 - 服务不可用 所有状态解释: 1xx(临时响应)表示临时响应并需要请求者继续执行操作的状态代码. 代码 说 ...