Server : nginx/1.22.1
System : Linux iZwz9daxib3w3i063fw434Z 3.10.0-1127.19.1.el7.x86_64 #1 SMP Tue Aug 25 17:23:54 UTC 2020 x86_64
User : www ( 1000)
PHP Version : 5.6.40
Disable Function : passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv
Directory :  /www/wwwroot/www.jkmold.com/api/video_api/
Upload File :
Current Directory [ Writeable ] Root Directory [ Writeable ]


Current File : /www/wwwroot/www.jkmold.com/api/video_api/add_video.php
<?php

defined('IN_PHPCMS') or exit('No permission resources.'); 





/**

 * 

 * 视频添加接收接口 在vms系统中添加视频、导入ku6视频时,会调用此接口同步这些视频

 * 

 * @author				chenxuewang

 * @link				http://www.phpcms.cn http://www.ku6.cn

 * @copyright			CopyRight (c) 2006-2012 酷溜网(北京)科技有限公司

 * @license			http://www.phpcms.cn/license/

 * 

 * 

 * *************************************

 *              			           *

 *                 参数说明            *

 *                                     *

 * ************************************* 

 * 

 * title, description, tag, vid, picpath, size, timelen, status, playnum, catid, posid

 * 

 * title, 视频标题

 * 

 * descrption 视频简介

 * 

 * tag 视频标签

 * 

 * vid,视频vid,视频的唯一的标示符。区分视频

 * 

 * picpath 视频缩略图

 * 

 * size 视频大小

 * 

 * timelen 视频播放时长

 * 

 * status 视频目前的状态

 * 

 * playnum 视频播放次数

 * 

 * catid 导入到本系统栏目ID 导入过来的视频,首先发布为内容,同时将视频放入视频库中供以后使用

 * 

 * posid 本系统推荐位ID 可以为空,不为空时,需要将视频添加到推荐位表中

 * 

 * 

 * ************************************

 *              			          *

 *                 返 回 值           *

 *                                    *

 * ************************************ 

 * 

 * 接口执行后,应返回相应的值通知vms系统

 * 返回值格式 json数据,array('msg'=>'Add Success', 'code'=>'100')

 */



//加载数据模型

$video_store_db = pc_base::load_model('video_store_model');

$content = pc_base::load_model('content_model');

$cat_db = pc_base::load_model('category_model');

$model_field = pc_base::load_model('sitemodel_field_model');

$video_setting = getcache('video', 'video');

//加载v.class

pc_base::load_app_func('global', 'video');

pc_base::load_app_class('v', 'video', 0);

$v = new v($db);



//验证信息

$data = $video_data = array();

$data['catid'] = intval($_POST['catid']);

if (!$data['catid']) {

	$data['catid'] = $video_setting['catid'];

} 

$cat_info = $cat_db->get_one(array('catid'=>$data['catid']));



$data['title'] = $video_data['title'] = $_POST['title'];

if (!$data['title']) {

	echo json_encode(array('msg'=>'The parameter title must have a value', 'code'=>3));

	exit;

}

if (!$_POST['picpath'] || strripos($_POST['picpath'],'.jpg')===false) {

	echo json_encode(array('msg'=>'The parameter picpath must have a value', 'code'=>5));

	exit;

}

$data['content'] = $_POST['description'] ? addslashes($_POST['description']) : '';

$data['description'] = $video_data['description'] = substr($data['content'], 0, 255);

$data['keywords'] = $video_data['keywords'] = $_POST['tag'] ? $_POST['tag'] : '';

$video_data['timelen'] = intval($_POST['timelen']);

$video_data['size'] = intval($_POST['size']);

$video_data['vid'] = $_POST['vid'];

if (!$video_data['vid']) {

	echo json_encode(array('msg'=>'The parameter vid must have a value', 'code'=>4));

	exit;

}



//先将视频加入到视频库中,并取得videoid

//判断vid是否已经存在视频库中

if (!$video_store = $video_store_db->get_one(array('vid'=>$video_data['vid']))) {

	$video_data['status'] = $_POST['ku6status'] ? intval($_POST['ku6status']) : 1;

	$video_data['picpath'] = safe_replace( format_url($_POST['picpath']) );

	$video_data['addtime'] = $_POST['createtime'] ? $_POST['createtime'] : SYS_TIME;

	$video_data['channelid'] = 1;

	if (strtolower(CHARSET)!='utf-8') {

		$video_data = array_iconv($video_data, 'utf-8', 'gbk');

	}

	$videoid = $video_store_db->insert($video_data, true);

} else {

	$videoid = $video_store['videoid'];

}

if (!$cat_info) {

	echo json_encode(array('msg'=>'Add Success', 'code'=>'200'));

	exit;

}

//根据栏目信息取得站点id及模型id

$siteid = $cat_info['siteid'];

$modelid = $cat_info['modelid'];

//根据模型id,得到视频字段名

$r = $model_field->get_one(array('modelid'=>$modelid, 'formtype'=>'video'), 'field');

$fieldname = $r['field'];

if ($_POST['posid']) {

	$data['posids'][] = $_POST['posid'];

}

$data['thumb'] = safe_replace( format_url($_POST['picpath']) );

$data[$fieldname] = 1;

//组合POST数据

$_POST[$fieldname.'_video'][1] = array('videoid'=>$videoid, 'listorder'=>1);

$data['status'] = ($video_data['status'] == 21 || $_POST['status']==1) ? 99 : 1;

//调用内容模型

if (strtolower(CHARSET)!='utf-8') {

	$data = array_iconv($data, 'utf-8', 'gbk');

}

$content->set_model($modelid); 

$cid = $content->add_content($data);

//更新对应关系

//$content_video_db = pc_base::load_model('video_content_model');

//$content_video_db->insert(array('contentid'=>$cid, 'videoid'=>$videoid, 'modelid'=>$modelid, 'listorder'=>1));

//更新点击次数 

if ($_POST['playnum']) {

	$views = intval($_POST['playnum']);

	$hitsid = 'c-'.$modelid.'-'.$cid;

	$count = pc_base::load_model('hits_model');

	$count->update(array('views'=>$views), array('hitsid'=>$hitsid));

}



echo json_encode(array('msg'=>'Add Success', 'code'=>'200'));

exit;

?>