修改了uploadify 的http-error问题
This commit is contained in:
parent
8d40a45d1e
commit
45cfd597aa
|
@ -1,46 +1,46 @@
|
|||
<?php
|
||||
class ServiceController extends Zend_Controller_Action
|
||||
{
|
||||
private $limit=10;
|
||||
function __call($id, $arguments)
|
||||
{
|
||||
$this->_helper->viewRenderer->setNoRender();
|
||||
$this->_helper->layout->disableLayout();
|
||||
}
|
||||
|
||||
function preDispatch()
|
||||
{
|
||||
$this->db=Zend_Registry::get('db');
|
||||
$this->view->config = Zend_Registry::get('config');
|
||||
$this->messenger=$this->_helper->getHelper('FlashMessenger');
|
||||
$this->view->messages = $this->messenger->getMessages();
|
||||
}
|
||||
|
||||
/*
|
||||
* 返回XML源文件
|
||||
*/
|
||||
function xmlAction()
|
||||
{
|
||||
$uuid=$this->_request->getParam('uuid');
|
||||
$row=$this->db->fetchRow("select xml.data from xml left join metadata on xml.id=metadata.id where metadata.uuid=?",array($uuid));
|
||||
$this->_helper->layout->disableLayout();
|
||||
$this->_helper->viewRenderer->setNoRender();
|
||||
$this->getResponse()->setHeader('Content-Type', 'text/xml')
|
||||
->setBody($row['data']);
|
||||
}
|
||||
/*
|
||||
* 查看数据缩略图
|
||||
*/
|
||||
function thumbAction()
|
||||
{
|
||||
$id = (int)$this->_request->getParam('id');
|
||||
<?php
|
||||
class ServiceController extends Zend_Controller_Action
|
||||
{
|
||||
private $limit=10;
|
||||
function __call($id, $arguments)
|
||||
{
|
||||
$this->_helper->viewRenderer->setNoRender();
|
||||
$this->_helper->layout->disableLayout();
|
||||
}
|
||||
|
||||
function preDispatch()
|
||||
{
|
||||
$this->db=Zend_Registry::get('db');
|
||||
$this->view->config = Zend_Registry::get('config');
|
||||
$this->messenger=$this->_helper->getHelper('FlashMessenger');
|
||||
$this->view->messages = $this->messenger->getMessages();
|
||||
}
|
||||
|
||||
/*
|
||||
* 返回XML源文件
|
||||
*/
|
||||
function xmlAction()
|
||||
{
|
||||
$uuid=$this->_request->getParam('uuid');
|
||||
$row=$this->db->fetchRow("select xml.data from xml left join metadata on xml.id=metadata.id where metadata.uuid=?",array($uuid));
|
||||
$this->_helper->layout->disableLayout();
|
||||
$this->_helper->viewRenderer->setNoRender();
|
||||
$this->getResponse()->setHeader('Content-Type', 'text/xml')
|
||||
->setBody($row['data']);
|
||||
}
|
||||
/*
|
||||
* 查看数据缩略图
|
||||
*/
|
||||
function thumbAction()
|
||||
{
|
||||
$id = (int)$this->_request->getParam('id');
|
||||
if (empty($id)) {
|
||||
$uuid = $this->_request->getParam('uuid');
|
||||
if (empty($uuid)) $this->_redirect('/data');
|
||||
$where=$this->db->quoteInto('m.uuid = ?',$uuid);
|
||||
} else {
|
||||
$where=$this->db->quoteInto('m.id = ?',$id);
|
||||
}
|
||||
}
|
||||
$sql="select t.* from thumbnail t left join metadata m on t.id=m.id where ".$where;
|
||||
$thumb=$this->db->fetchRow($sql);
|
||||
$this->_helper->layout->disableLayout();
|
||||
|
@ -54,22 +54,22 @@ class ServiceController extends Zend_Controller_Action
|
|||
} else {
|
||||
header("Content-Type:image/".$thumb['filetype']);
|
||||
print base64_decode($thumb['data']);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* 查看数据缩略大图
|
||||
*/
|
||||
function bigthumbAction()
|
||||
{
|
||||
$id = (int)$this->_request->getParam('id');
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* 查看数据缩略大图
|
||||
*/
|
||||
function bigthumbAction()
|
||||
{
|
||||
$id = (int)$this->_request->getParam('id');
|
||||
if (empty($id)) {
|
||||
$uuid = $this->_request->getParam('uuid');
|
||||
if (empty($uuid)) $this->_redirect('/data');
|
||||
$where=$this->db->quoteInto('m.uuid = ?',$uuid);
|
||||
} else {
|
||||
$where=$this->db->quoteInto('m.id = ?',$id);
|
||||
}
|
||||
}
|
||||
$sql="select g.id as gid,t.filename,t.filetype from geonetworkmetadata g left join metadata m on g.uuid=m.uuid left join thumbnail t on t.id=m.id where ".$where;
|
||||
$thumb=$this->db->fetchRow($sql);
|
||||
$this->_helper->layout->disableLayout();
|
||||
|
@ -80,181 +80,181 @@ class ServiceController extends Zend_Controller_Action
|
|||
$file=fopen("images/nothumb.png",'r');
|
||||
fpassthru($file);
|
||||
exit;
|
||||
} else {
|
||||
$url=$this->view->config->bigthumb->path.sprintf('%05d',floor(($thumb['gid']+0.1)/100)*100).'-'.sprintf('%05d',ceil(($thumb['gid']+0.1)/100)*100-1)."/".$thumb['gid'];
|
||||
} else {
|
||||
$url=$this->view->config->bigthumb->path.sprintf('%05d',floor(($thumb['gid']+0.1)/100)*100).'-'.sprintf('%05d',ceil(($thumb['gid']+0.1)/100)*100-1)."/".$thumb['gid'];
|
||||
$url.='/public/'.str_replace('_s.','.',$thumb['filename']);
|
||||
header("Content-Type:image/".$thumb['filetype']);
|
||||
$file=fopen($url,'r');
|
||||
fpassthru($file);
|
||||
exit;
|
||||
}
|
||||
}
|
||||
/*
|
||||
* 搜索, no page, json output
|
||||
*/
|
||||
function searchAction()
|
||||
{
|
||||
$this->view->addHelperPath('helper','Zend_View_Helper_');
|
||||
$this->_helper->layout->disableLayout();
|
||||
$this->_helper->viewRenderer->setNoRender();
|
||||
//$page=(int)$this->_request->getParam('page');
|
||||
//if (empty($page)) $page=1;
|
||||
//$offset=$this->limit*($page-1);
|
||||
$key=$this->_request->getParam('q');
|
||||
$n=(int)$this->_request->getParam('n');
|
||||
$s=(int)$this->_request->getParam('s');
|
||||
$e=(int)$this->_request->getParam('e');
|
||||
$w=(int)$this->_request->getParam('w');
|
||||
if (!(empty($n) && empty($key))) {
|
||||
if (empty($n)) $n=90;
|
||||
if (empty($s)) $s=-90;
|
||||
if (empty($e)) $e=180;
|
||||
if (empty($w)) $w=-180;
|
||||
//$start=$this->_request->getParam('start');
|
||||
//$end=$this->_request->getParam('end');
|
||||
$sql="select id,title,uuid,description,filesize,fileformat from metadata where east<? and west>? and north<? and south>?";
|
||||
if (!empty($key)) {
|
||||
$sql.= " and (title ilike ? or description ilike ?)";
|
||||
$sql.= " order by title";
|
||||
$rows=$this->db->fetchAll($sql,array($e,$w,$n,$s,'%'.$key.'%','%'.$key.'%'));
|
||||
} else {
|
||||
$sql.= " order by title";
|
||||
$rows=$this->db->fetchAll($sql,array($e,$w,$n,$s));
|
||||
}
|
||||
$this->_helper->json($rows);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* 产生geojson数据
|
||||
*/
|
||||
function jsonAction()
|
||||
{
|
||||
$md=new MetadataTable();
|
||||
$db=$md->getAdapter();
|
||||
$id = (int)$this->_request->getParam('id');
|
||||
$where='';
|
||||
if (!empty($id)) { $where=' where id='.$id; }
|
||||
$sql='select id,uuid,west,south,north,east,title from metadata'.$where;
|
||||
$state=$db->query($sql);
|
||||
$rows=$state->fetchAll();
|
||||
$geomd=new GeoMetaData();
|
||||
foreach($rows as $row){
|
||||
if ($id)
|
||||
$box=new GeoBox($row['west'],$row['south'],$row['east'],$row['north']);
|
||||
else
|
||||
$box=new GeoBoxLine($row['west'],$row['south'],$row['east'],$row['north']);
|
||||
$feature=new Geofeature();
|
||||
$feature->id=$row['id'];
|
||||
$feature->addProperties('title',$row['title']);
|
||||
$feature->addProperties('uuid',$row['uuid']);
|
||||
$feature->addProperties('id',$row['id']);
|
||||
$feature->geometry=$box;
|
||||
$geomd->addFeature($feature);
|
||||
}
|
||||
$this->_helper->json($geomd);
|
||||
}
|
||||
|
||||
function detailAction()
|
||||
{
|
||||
$id=(int)$this->_request->getParam('id');
|
||||
$xml=new XmlTable();
|
||||
$db=$xml->getAdapter();
|
||||
$where=$db->quoteInto('id=?',$id);
|
||||
$order='id desc';
|
||||
$row=$xml->fetchRow($where,$order);
|
||||
// Load the XML source
|
||||
$xml = new DOMDocument;
|
||||
$xml->loadXML($row->data);
|
||||
$xsl = new DOMDocument;
|
||||
$xsl->load($this->view->config->westdc->xsl);
|
||||
// Configure the transformer
|
||||
$proc = new XSLTProcessor;
|
||||
$proc->importStyleSheet($xsl); // attach the xsl rules
|
||||
$this->view->xml=$proc->transformToXML($xml);
|
||||
//$this->_helper->layout->disableLayout();
|
||||
//$this->_helper->viewRenderer->setNoRender();
|
||||
//$this->getResponse()->setHeader('Content-Type', 'text/html')
|
||||
// ->setBody($proc->transformToXML($xml));
|
||||
}
|
||||
function feedAction()
|
||||
{
|
||||
$feedArray = array(
|
||||
'title' => '中国西部环境与生态科学数据中心',
|
||||
'link' => 'http://'.$_SERVER['SERVER_NAME'].'/data/feed',
|
||||
'description' => '共享西部计划产生的数据',
|
||||
'language' => 'zh-CN',
|
||||
'charset' => 'utf-8',
|
||||
'published' => time(),
|
||||
//'generator' => 'Zend Framework Zend_Feed',
|
||||
'entries' => array()
|
||||
);
|
||||
$sql="select * from metadata order by ts_created desc";
|
||||
$rs=$this->db->fetchAll($sql);
|
||||
$feedArray['published']=strtotime($rs[0]['ts_created']);
|
||||
foreach($rs as $r)
|
||||
{
|
||||
$feedArray['entries'][] = array(
|
||||
'title' => $r['title'],
|
||||
'link' => 'http://'.$_SERVER['SERVER_NAME'].'/data/' . $r['uuid'],
|
||||
'guid' => 'http://'.$_SERVER['SERVER_NAME'].'/data/' . $r['uuid'],
|
||||
//'content'=>$r['description'],
|
||||
'description' => $r['description'],
|
||||
'lastUpdate' => strtotime($r['ts_created'])
|
||||
);
|
||||
}
|
||||
$feed = Zend_Feed::importArray($feedArray,'rss');
|
||||
$this->_helper->layout->disableLayout();
|
||||
$this->_helper->viewRenderer->setNoRender();
|
||||
$feed->send();
|
||||
}
|
||||
|
||||
public function pingbackAction()
|
||||
{
|
||||
$this->_helper->ViewRenderer->setNoRender();
|
||||
$this->_helper->layout->disableLayout();
|
||||
$server = new Zend_XmlRpc_Server();
|
||||
$server->setClass('PingbackRpc', 'pingback');
|
||||
echo $server->handle();
|
||||
}
|
||||
|
||||
public function pingtestAction()
|
||||
{
|
||||
$this->_helper->ViewRenderer->setNoRender();
|
||||
$this->_helper->layout->disableLayout();
|
||||
$client = new Zend_XmlRpc_Client('http://test.westgis.ac.cn/data/pingback');
|
||||
$arg1 = 'http://wlx.westgis.ac.cn/567/';
|
||||
$arg2 = 'http://test.westgis.ac.cn/data/487591d0-d437-4114-b810-cbef7c4ee4b2';
|
||||
//$result = $client->call('pingback.ping', array($arg1, $arg2));
|
||||
$test = $client->getProxy('pingback');
|
||||
$test->ping($arg1,$arg2);
|
||||
//var_dump($result);
|
||||
}
|
||||
public function outputAction()
|
||||
{
|
||||
$this->_helper->layout->disableLayout();
|
||||
$this->_helper->viewRenderer->setNoRender();
|
||||
$sql="select title,datatype,filesize,id from metadata";
|
||||
$md=$this->db->fetchAll($sql);
|
||||
foreach($md as $m)
|
||||
{
|
||||
print $m["title"].",";
|
||||
print ($m["datatype"]?"内部":"公开").",";
|
||||
print ($m["filesize"]==1?" ":$m["filesize"]).",";
|
||||
$sql1="select keyword from keyword where id=".$m["id"]." and keytype='place'";
|
||||
$kd=$this->db->fetchAll($sql1);
|
||||
foreach ($kd as $p) print $p["keyword"]." ";
|
||||
print ",";
|
||||
$sql1="select keyword from keyword where id=".$m["id"]." and keytype='temporal'";
|
||||
$kd=$this->db->fetchAll($sql1);
|
||||
foreach ($kd as $p) print $p["keyword"]." ";
|
||||
print ",";
|
||||
print "<br>";
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
/*
|
||||
* 搜索, no page, json output
|
||||
*/
|
||||
function searchAction()
|
||||
{
|
||||
$this->view->addHelperPath('helper','Zend_View_Helper_');
|
||||
$this->_helper->layout->disableLayout();
|
||||
$this->_helper->viewRenderer->setNoRender();
|
||||
//$page=(int)$this->_request->getParam('page');
|
||||
//if (empty($page)) $page=1;
|
||||
//$offset=$this->limit*($page-1);
|
||||
$key=$this->_request->getParam('q');
|
||||
$n=(int)$this->_request->getParam('n');
|
||||
$s=(int)$this->_request->getParam('s');
|
||||
$e=(int)$this->_request->getParam('e');
|
||||
$w=(int)$this->_request->getParam('w');
|
||||
if (!(empty($n) && empty($key))) {
|
||||
if (empty($n)) $n=90;
|
||||
if (empty($s)) $s=-90;
|
||||
if (empty($e)) $e=180;
|
||||
if (empty($w)) $w=-180;
|
||||
//$start=$this->_request->getParam('start');
|
||||
//$end=$this->_request->getParam('end');
|
||||
$sql="select id,title,uuid,description,filesize,fileformat from metadata where east<? and west>? and north<? and south>?";
|
||||
if (!empty($key)) {
|
||||
$sql.= " and (title ilike ? or description ilike ?)";
|
||||
$sql.= " order by title";
|
||||
$rows=$this->db->fetchAll($sql,array($e,$w,$n,$s,'%'.$key.'%','%'.$key.'%'));
|
||||
} else {
|
||||
$sql.= " order by title";
|
||||
$rows=$this->db->fetchAll($sql,array($e,$w,$n,$s));
|
||||
}
|
||||
$this->_helper->json($rows);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* 产生geojson数据
|
||||
*/
|
||||
function jsonAction()
|
||||
{
|
||||
$md=new MetadataTable();
|
||||
$db=$md->getAdapter();
|
||||
$id = (int)$this->_request->getParam('id');
|
||||
$where='';
|
||||
if (!empty($id)) { $where=' where id='.$id; }
|
||||
$sql='select id,uuid,west,south,north,east,title from metadata'.$where;
|
||||
$state=$db->query($sql);
|
||||
$rows=$state->fetchAll();
|
||||
$geomd=new GeoMetaData();
|
||||
foreach($rows as $row){
|
||||
if ($id)
|
||||
$box=new GeoBox($row['west'],$row['south'],$row['east'],$row['north']);
|
||||
else
|
||||
$box=new GeoBoxLine($row['west'],$row['south'],$row['east'],$row['north']);
|
||||
$feature=new Geofeature();
|
||||
$feature->id=$row['id'];
|
||||
$feature->addProperties('title',$row['title']);
|
||||
$feature->addProperties('uuid',$row['uuid']);
|
||||
$feature->addProperties('id',$row['id']);
|
||||
$feature->geometry=$box;
|
||||
$geomd->addFeature($feature);
|
||||
}
|
||||
$this->_helper->json($geomd);
|
||||
}
|
||||
|
||||
function detailAction()
|
||||
{
|
||||
$id=(int)$this->_request->getParam('id');
|
||||
$xml=new XmlTable();
|
||||
$db=$xml->getAdapter();
|
||||
$where=$db->quoteInto('id=?',$id);
|
||||
$order='id desc';
|
||||
$row=$xml->fetchRow($where,$order);
|
||||
// Load the XML source
|
||||
$xml = new DOMDocument;
|
||||
$xml->loadXML($row->data);
|
||||
$xsl = new DOMDocument;
|
||||
$xsl->load($this->view->config->westdc->xsl);
|
||||
// Configure the transformer
|
||||
$proc = new XSLTProcessor;
|
||||
$proc->importStyleSheet($xsl); // attach the xsl rules
|
||||
$this->view->xml=$proc->transformToXML($xml);
|
||||
//$this->_helper->layout->disableLayout();
|
||||
//$this->_helper->viewRenderer->setNoRender();
|
||||
//$this->getResponse()->setHeader('Content-Type', 'text/html')
|
||||
// ->setBody($proc->transformToXML($xml));
|
||||
}
|
||||
function feedAction()
|
||||
{
|
||||
$feedArray = array(
|
||||
'title' => '中国西部环境与生态科学数据中心',
|
||||
'link' => 'http://'.$_SERVER['SERVER_NAME'].'/data/feed',
|
||||
'description' => '共享西部计划产生的数据',
|
||||
'language' => 'zh-CN',
|
||||
'charset' => 'utf-8',
|
||||
'published' => time(),
|
||||
//'generator' => 'Zend Framework Zend_Feed',
|
||||
'entries' => array()
|
||||
);
|
||||
$sql="select * from metadata order by ts_created desc";
|
||||
$rs=$this->db->fetchAll($sql);
|
||||
$feedArray['published']=strtotime($rs[0]['ts_created']);
|
||||
foreach($rs as $r)
|
||||
{
|
||||
$feedArray['entries'][] = array(
|
||||
'title' => $r['title'],
|
||||
'link' => 'http://'.$_SERVER['SERVER_NAME'].'/data/' . $r['uuid'],
|
||||
'guid' => 'http://'.$_SERVER['SERVER_NAME'].'/data/' . $r['uuid'],
|
||||
//'content'=>$r['description'],
|
||||
'description' => $r['description'],
|
||||
'lastUpdate' => strtotime($r['ts_created'])
|
||||
);
|
||||
}
|
||||
$feed = Zend_Feed::importArray($feedArray,'rss');
|
||||
$this->_helper->layout->disableLayout();
|
||||
$this->_helper->viewRenderer->setNoRender();
|
||||
$feed->send();
|
||||
}
|
||||
|
||||
public function pingbackAction()
|
||||
{
|
||||
$this->_helper->ViewRenderer->setNoRender();
|
||||
$this->_helper->layout->disableLayout();
|
||||
$server = new Zend_XmlRpc_Server();
|
||||
$server->setClass('PingbackRpc', 'pingback');
|
||||
echo $server->handle();
|
||||
}
|
||||
|
||||
public function pingtestAction()
|
||||
{
|
||||
$this->_helper->ViewRenderer->setNoRender();
|
||||
$this->_helper->layout->disableLayout();
|
||||
$client = new Zend_XmlRpc_Client('http://test.westgis.ac.cn/data/pingback');
|
||||
$arg1 = 'http://wlx.westgis.ac.cn/567/';
|
||||
$arg2 = 'http://test.westgis.ac.cn/data/487591d0-d437-4114-b810-cbef7c4ee4b2';
|
||||
//$result = $client->call('pingback.ping', array($arg1, $arg2));
|
||||
$test = $client->getProxy('pingback');
|
||||
$test->ping($arg1,$arg2);
|
||||
//var_dump($result);
|
||||
}
|
||||
public function outputAction()
|
||||
{
|
||||
$this->_helper->layout->disableLayout();
|
||||
$this->_helper->viewRenderer->setNoRender();
|
||||
$sql="select title,datatype,filesize,id from metadata";
|
||||
$md=$this->db->fetchAll($sql);
|
||||
foreach($md as $m)
|
||||
{
|
||||
print $m["title"].",";
|
||||
print ($m["datatype"]?"内部":"公开").",";
|
||||
print ($m["filesize"]==1?" ":$m["filesize"]).",";
|
||||
$sql1="select keyword from keyword where id=".$m["id"]." and keytype='place'";
|
||||
$kd=$this->db->fetchAll($sql1);
|
||||
foreach ($kd as $p) print $p["keyword"]." ";
|
||||
print ",";
|
||||
$sql1="select keyword from keyword where id=".$m["id"]." and keytype='temporal'";
|
||||
$kd=$this->db->fetchAll($sql1);
|
||||
foreach ($kd as $p) print $p["keyword"]." ";
|
||||
print ",";
|
||||
print "<br>";
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/*
|
||||
* 转换元数据为WORD DOC格式
|
||||
*/
|
||||
|
@ -343,8 +343,8 @@ class ServiceController extends Zend_Controller_Action
|
|||
->setHeader('Cache-Control','must-revalidate, post-check=0, pre-check=0')
|
||||
->setHeader('Pragma','public')
|
||||
->setBody($content);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/*
|
||||
* 转换元数据为PDF格式
|
||||
*/
|
||||
|
@ -353,50 +353,50 @@ class ServiceController extends Zend_Controller_Action
|
|||
$this->_helper->layout->disableLayout();
|
||||
$this->_helper->viewRenderer->setNoRender();
|
||||
$uuid=$this->_request->getParam('uuid');
|
||||
$review=$this->_request->getParam('review');
|
||||
$review=$this->_request->getParam('review');
|
||||
error_reporting(1);
|
||||
if (!empty($uuid))
|
||||
{
|
||||
$sql="select x.data,m.title,m.citation,m.suppinfo,m.doi,m.filesize,m.fileformat,m.south,m.east,m.west,m.north,m.timebegin,m.timeend,m.title_en,m.uuid,m.description,g.id,m.projection,t.filetype,
|
||||
cc.name as category, cc.name_zh as category_zh
|
||||
from xml x left join metadata m on m.id=x.id left join thumbnail t on x.id=t.id
|
||||
left join category c on c.id=m.id left join categorycode cc on c.code=cc.code
|
||||
$sql="select x.data,m.title,m.citation,m.suppinfo,m.doi,m.filesize,m.fileformat,m.south,m.east,m.west,m.north,m.timebegin,m.timeend,m.title_en,m.uuid,m.description,g.id,m.projection,t.filetype,
|
||||
cc.name as category, cc.name_zh as category_zh
|
||||
from xml x left join metadata m on m.id=x.id left join thumbnail t on x.id=t.id
|
||||
left join category c on c.id=m.id left join categorycode cc on c.code=cc.code
|
||||
left join geonetworkmetadata g on g.uuid=m.uuid where m.uuid=".$this->db->quote($uuid);
|
||||
$row=$this->db->fetchRow($sql);
|
||||
$sql="select r.* from reference r left join mdref m on m.refid=r.id where m.uuid=?";
|
||||
$sql=$this->db->quoteInto($sql,$uuid);
|
||||
$ref=$this->db->fetchAll($sql);
|
||||
$ref=$this->db->fetchAll($sql);
|
||||
$reference="";
|
||||
foreach($ref as $k=>$refer)
|
||||
{
|
||||
$reference.=($k+1).'. '.str_replace(array("\r\n", "\n", "\r"),'',$refer['reference'])."\r\n";
|
||||
}
|
||||
$row['reference']=$reference;
|
||||
$sql="select u.uselimit from mdlimit ml left join metadata m on ml.uuid=m.uuid left join uselimit u on ml.lid=u.id where m.uuid=?";
|
||||
}
|
||||
$row['reference']=$reference;
|
||||
$sql="select u.uselimit from mdlimit ml left join metadata m on ml.uuid=m.uuid left join uselimit u on ml.lid=u.id where m.uuid=?";
|
||||
$sql=$this->db->quoteInto($sql,$uuid);
|
||||
$limits=$this->db->fetchAll($sql);
|
||||
$limits=$this->db->fetchAll($sql);
|
||||
$uselimits="";
|
||||
foreach($limits as $k=>$limit)
|
||||
{
|
||||
//$uselimits.=($k+1).'. '.str_replace(array("\r\n", "\n", "\r"),'',$limit['uselimit'])."\r\n";
|
||||
//$uselimits.=($k+1).'. '.str_replace(array("\r\n", "\n", "\r"),'',$limit['uselimit'])."\r\n";
|
||||
$uselimits.=($k+1).'. '.str_replace(array("\r\n", "\n", "\r"),'',$limit['uselimit'])."\r\n";
|
||||
}
|
||||
$row['uselimits']=$uselimits;
|
||||
$sql="select ol.* from onlineresource ol left join metadata m on ol.uuid=m.uuid where m.uuid=?";
|
||||
}
|
||||
$row['uselimits']=$uselimits;
|
||||
$sql="select ol.* from onlineresource ol left join metadata m on ol.uuid=m.uuid where m.uuid=?";
|
||||
$sql=$this->db->quoteInto($sql,$uuid);
|
||||
$row['resources']=$this->db->fetchAll($sql);
|
||||
$sql="select r.role,s.* from role r left join responsible s on r.resid=s.id left join metadata m on m.uuid=r.uuid where m.uuid=? order by r.role,r.id";
|
||||
$row['resources']=$this->db->fetchAll($sql);
|
||||
$sql="select r.role,s.* from role r left join responsible s on r.resid=s.id left join metadata m on m.uuid=r.uuid where m.uuid=? order by r.role,r.id";
|
||||
$sql=$this->db->quoteInto($sql,$uuid);
|
||||
$row['contacts']=$this->db->fetchAll($sql);
|
||||
|
||||
$sql="select k.keyword, k.keytype from keyword k left join metadata m on k.id=m.id where m.uuid=? order by k.keytype";
|
||||
$row['contacts']=$this->db->fetchAll($sql);
|
||||
|
||||
$sql="select k.keyword, k.keytype from keyword k left join metadata m on k.id=m.id where m.uuid=? order by k.keytype";
|
||||
$sql=$this->db->quoteInto($sql,$uuid);
|
||||
$keys=$this->db->fetchAll($sql);
|
||||
$keyword=array();
|
||||
foreach($keys as $key)
|
||||
{
|
||||
@$keyword[$key['keytype']].=$key['keyword'].',';
|
||||
}
|
||||
$keys=$this->db->fetchAll($sql);
|
||||
$keyword=array();
|
||||
foreach($keys as $key)
|
||||
{
|
||||
@$keyword[$key['keytype']].=$key['keyword'].',';
|
||||
}
|
||||
$row['keyword']=$keyword;
|
||||
|
||||
if (is_numeric($row['projection']))
|
||||
|
@ -410,93 +410,93 @@ class ServiceController extends Zend_Controller_Action
|
|||
$projection='';
|
||||
|
||||
$dom = new DOMDocument();
|
||||
$dom->loadXML($row['data']);
|
||||
$dom->loadXML($row['data']);
|
||||
$xpath = new DOMXpath($dom);
|
||||
$row['rfdenom']=@$dom->getElementsByTagName('rfDenom')->item(0)->nodeValue;
|
||||
$row['resolution']=@$xpath->query('//scaleDist/value/Real')->item(0)->nodeValue;
|
||||
$row['resolution'].=@$dom->getElementsByTagName('uomName')->item(0)->nodeValue;
|
||||
$row['rfdenom']=@$dom->getElementsByTagName('rfDenom')->item(0)->nodeValue;
|
||||
$row['resolution']=@$xpath->query('//scaleDist/value/Real')->item(0)->nodeValue;
|
||||
$row['resolution'].=@$dom->getElementsByTagName('uomName')->item(0)->nodeValue;
|
||||
//提前对表格进行预处理
|
||||
/*$wiki=new WikiFormat();
|
||||
$row['description']=$wiki->parseTable($row["description"]);
|
||||
preg_match_all('/<table>[\s\S]*?<\/table>/im', $row['description'],$tables);
|
||||
foreach($tables as $k=>$table)
|
||||
{
|
||||
$row['description']=str_replace($tables[$k],"\n 【表格内容暂不支持,请访问网站查看,此处请忽略】\n",$row['description']);
|
||||
}*/
|
||||
$pdf=new MetadataPDF();
|
||||
$pdf->metadata=$row;
|
||||
$pdf->Draw();
|
||||
$pdf->setTitle($row['title'],true);
|
||||
$pdf->setAuthor('中国西部环境与生态科学数据中心',true);
|
||||
$row['description']=$wiki->parseTable($row["description"]);
|
||||
preg_match_all('/<table>[\s\S]*?<\/table>/im', $row['description'],$tables);
|
||||
foreach($tables as $k=>$table)
|
||||
{
|
||||
$row['description']=str_replace($tables[$k],"\n 【表格内容暂不支持,请访问网站查看,此处请忽略】\n",$row['description']);
|
||||
}*/
|
||||
$pdf=new MetadataPDF();
|
||||
$pdf->metadata=$row;
|
||||
$pdf->Draw();
|
||||
$pdf->setTitle($row['title'],true);
|
||||
$pdf->setAuthor('中国西部环境与生态科学数据中心',true);
|
||||
$this->getResponse()->setHeader('Content-Type', 'application/pdf');
|
||||
//->setHeader('Content-Disposition','inline; filename="'.$row['title'].'.pdf"');
|
||||
//->setHeader('Content-Disposition','inline; filename="'.$row['title'].'.pdf"');
|
||||
$pdf->Output($row['title'].'.pdf','I');
|
||||
//die();
|
||||
}
|
||||
public function odtAction()
|
||||
{
|
||||
}
|
||||
public function odtAction()
|
||||
{
|
||||
$this->_helper->layout->disableLayout();
|
||||
$this->_helper->viewRenderer->setNoRender();
|
||||
$uuid=$this->_request->getParam('uuid');
|
||||
$review=$this->_request->getParam('review');
|
||||
//error_reporting(1);
|
||||
$review=$this->_request->getParam('review');
|
||||
//error_reporting(1);
|
||||
if (!empty($uuid))
|
||||
{
|
||||
$sql="select x.data,m.title,m.citation,m.suppinfo,m.doi,m.filesize,m.fileformat,m.south,m.east,m.west,m.north,m.timebegin,m.timeend,m.title_en,m.uuid,m.description,g.id,m.projection,t.filetype,
|
||||
cc.name as category, cc.name_zh as category_zh
|
||||
from xml x left join metadata m on m.id=x.id left join thumbnail t on x.id=t.id
|
||||
left join category c on c.id=m.id left join categorycode cc on c.code=cc.code
|
||||
$sql="select x.data,m.title,m.citation,m.suppinfo,m.doi,m.filesize,m.fileformat,m.south,m.east,m.west,m.north,m.timebegin,m.timeend,m.title_en,m.uuid,m.description,g.id,m.projection,t.filetype,
|
||||
cc.name as category, cc.name_zh as category_zh
|
||||
from xml x left join metadata m on m.id=x.id left join thumbnail t on x.id=t.id
|
||||
left join category c on c.id=m.id left join categorycode cc on c.code=cc.code
|
||||
left join geonetworkmetadata g on g.uuid=m.uuid where m.uuid=".$this->db->quote($uuid);
|
||||
$row=$this->db->fetchRow($sql);
|
||||
$sql="select r.* from reference r left join mdref m on m.refid=r.id where m.uuid=?";
|
||||
$sql=$this->db->quoteInto($sql,$uuid);
|
||||
$ref=$this->db->fetchAll($sql);
|
||||
$ref=$this->db->fetchAll($sql);
|
||||
$reference="";
|
||||
foreach($ref as $k=>$refer)
|
||||
{
|
||||
$reference.=($k+1).'. '.str_replace(array("\r\n", "\n", "\r"),'',$refer['reference'])."\r\n";
|
||||
}
|
||||
$row['reference']=$reference;
|
||||
$sql="select u.uselimit from mdlimit ml left join metadata m on ml.uuid=m.uuid left join uselimit u on ml.lid=u.id where m.uuid=?";
|
||||
}
|
||||
$row['reference']=$reference;
|
||||
$sql="select u.uselimit from mdlimit ml left join metadata m on ml.uuid=m.uuid left join uselimit u on ml.lid=u.id where m.uuid=?";
|
||||
$sql=$this->db->quoteInto($sql,$uuid);
|
||||
$limits=$this->db->fetchAll($sql);
|
||||
$limits=$this->db->fetchAll($sql);
|
||||
$uselimits="";
|
||||
foreach($limits as $k=>$limit)
|
||||
{
|
||||
//$uselimits.=($k+1).'. '.str_replace(array("\r\n", "\n", "\r"),'',$limit['uselimit'])."\r\n";
|
||||
//$uselimits.=($k+1).'. '.str_replace(array("\r\n", "\n", "\r"),'',$limit['uselimit'])."\r\n";
|
||||
$uselimits.=($k+1).'. '.str_replace(array("\r\n", "\n", "\r"),'',$limit['uselimit'])."\r\n";
|
||||
}
|
||||
$row['uselimits']=$uselimits;
|
||||
$sql="select ol.* from onlineresource ol left join metadata m on ol.uuid=m.uuid where m.uuid=?";
|
||||
}
|
||||
$row['uselimits']=$uselimits;
|
||||
$sql="select ol.* from onlineresource ol left join metadata m on ol.uuid=m.uuid where m.uuid=?";
|
||||
$sql=$this->db->quoteInto($sql,$uuid);
|
||||
$res=$this->db->fetchAll($sql);
|
||||
$resource="";
|
||||
foreach($res as $k=>$r)
|
||||
{
|
||||
$resource.=($k+1).". ".$r['name'].' '.$r['linkage']."\n";
|
||||
}
|
||||
$row['resources']=$resource;
|
||||
$sql="select r.role,s.* from role r left join responsible s on r.resid=s.id left join metadata m on m.uuid=r.uuid where m.uuid=? order by r.role,r.id";
|
||||
$res=$this->db->fetchAll($sql);
|
||||
$resource="";
|
||||
foreach($res as $k=>$r)
|
||||
{
|
||||
$resource.=($k+1).". ".$r['name'].' '.$r['linkage']."\n";
|
||||
}
|
||||
$row['resources']=$resource;
|
||||
$sql="select r.role,s.* from role r left join responsible s on r.resid=s.id left join metadata m on m.uuid=r.uuid where m.uuid=? order by r.role,r.id";
|
||||
$sql=$this->db->quoteInto($sql,$uuid);
|
||||
$contact=$this->db->fetchAll($sql);
|
||||
$contacts="";
|
||||
$party_zh=array('resourceProvider'=>'资源提供者','custodian'=>'维护者','owner'=>'拥有者','user'=>'用户','distributor'=>'数据服务联系人','originator'=>'创建者','pointOfContact'=>'联系人','principalInvestigator'=>'数据调查与处理者','processor'=>'处理者','publisher'=>'元数据发布者','author'=>'元数据作者');
|
||||
foreach($contact as $k=>$c)
|
||||
{
|
||||
@$contacts.=($k+1).". ".$party_zh[$c['role']]."\n";
|
||||
@$contacts.=$c['individual'].' 单位:'.$c['organisation']."\n";
|
||||
@$contacts.='地址:'.$c['country'].' '.$c['administractive'].' '.$c['city'].' '.$c['delivery']."\n";
|
||||
@$contacts.='邮编:'.$c['postal'].' 电话:'.$c['phone'].' 邮件:'.$c['email']."\n\n";
|
||||
}
|
||||
$row['contacts']=$contacts;
|
||||
$sql="select k.keyword, k.keytype from keyword k left join metadata m on k.id=m.id where m.uuid=? order by k.keytype";
|
||||
$contact=$this->db->fetchAll($sql);
|
||||
$contacts="";
|
||||
$party_zh=array('resourceProvider'=>'资源提供者','custodian'=>'维护者','owner'=>'拥有者','user'=>'用户','distributor'=>'数据服务联系人','originator'=>'创建者','pointOfContact'=>'联系人','principalInvestigator'=>'数据调查与处理者','processor'=>'处理者','publisher'=>'元数据发布者','author'=>'元数据作者');
|
||||
foreach($contact as $k=>$c)
|
||||
{
|
||||
@$contacts.=($k+1).". ".$party_zh[$c['role']]."\n";
|
||||
@$contacts.=$c['individual'].' 单位:'.$c['organisation']."\n";
|
||||
@$contacts.='地址:'.$c['country'].' '.$c['administractive'].' '.$c['city'].' '.$c['delivery']."\n";
|
||||
@$contacts.='邮编:'.$c['postal'].' 电话:'.$c['phone'].' 邮件:'.$c['email']."\n\n";
|
||||
}
|
||||
$row['contacts']=$contacts;
|
||||
$sql="select k.keyword, k.keytype from keyword k left join metadata m on k.id=m.id where m.uuid=? order by k.keytype";
|
||||
$sql=$this->db->quoteInto($sql,$uuid);
|
||||
$keys=$this->db->fetchAll($sql);
|
||||
$keyword=array();
|
||||
foreach($keys as $key)
|
||||
{
|
||||
@$keyword[$key['keytype']].=$key['keyword'].',';
|
||||
}
|
||||
$keys=$this->db->fetchAll($sql);
|
||||
$keyword=array();
|
||||
foreach($keys as $key)
|
||||
{
|
||||
@$keyword[$key['keytype']].=$key['keyword'].',';
|
||||
}
|
||||
$row['keyword']=$keyword;
|
||||
|
||||
if (is_numeric($row['projection']))
|
||||
|
@ -510,75 +510,128 @@ class ServiceController extends Zend_Controller_Action
|
|||
$projection='';
|
||||
|
||||
$dom = new DOMDocument();
|
||||
$dom->loadXML($row['data']);
|
||||
$dom->loadXML($row['data']);
|
||||
$xpath = new DOMXpath($dom);
|
||||
$row['rfdenom']=@$dom->getElementsByTagName('rfDenom')->item(0)->nodeValue;
|
||||
$row['resolution']=@$xpath->query('//scaleDist/value/Real')->item(0)->nodeValue;
|
||||
$row['resolution'].=@$dom->getElementsByTagName('uomName')->item(0)->nodeValue;
|
||||
$row['rfdenom']=@$dom->getElementsByTagName('rfDenom')->item(0)->nodeValue;
|
||||
$row['resolution']=@$xpath->query('//scaleDist/value/Real')->item(0)->nodeValue;
|
||||
$row['resolution'].=@$dom->getElementsByTagName('uomName')->item(0)->nodeValue;
|
||||
//提前对表格进行预处理
|
||||
$wiki=new WikiFormat();
|
||||
$row['description']=$wiki->parseTable($row["description"]);
|
||||
preg_match_all('/<table>[\s\S]*?<\/table>/im', $row['description'],$tables);
|
||||
$search=array();
|
||||
$replace=array();
|
||||
foreach($tables as $k=>$table)
|
||||
{
|
||||
/*$search[]="<table>";
|
||||
$replace[]='<table:table table:name="Table 3">'.str_repeat('<table:table-column />',substr_count($table[0],'<th>'));
|
||||
$search[]="<tr>";
|
||||
$replace[]="<table:table-row>";
|
||||
$search[]="<td>";
|
||||
$replace[]="<table:table-cell><text:p>";
|
||||
$search[]="<th>";
|
||||
$replace[]="<table:table-cell><text:p>";
|
||||
$search[]="</td>";
|
||||
$replace[]="</text:p></table:table-cell>";
|
||||
$search[]="</th>";
|
||||
$replace[]="</text:p></table:table-cell>";
|
||||
$search[]="</tr>";
|
||||
$replace[]="</table:table-row>";
|
||||
$search[]="</table>";
|
||||
$replace[]="</table:table>";
|
||||
$table=str_replace($search,$replace,$table[0]);*/
|
||||
$row['description']=str_replace($tables[$k][0],"\n 【表格内容暂不支持,请访问网站查看,此处请忽略】\n",$row['description']);
|
||||
}
|
||||
|
||||
require_once('odtphp/library/odf.php');
|
||||
$config["PATH_TO_TMP"]="/tmp/zip";
|
||||
$config["ZIP_PROXY"]="ZipArchive";
|
||||
$odf=new Odf("../data/metadata-template.odt",$config);
|
||||
$odf->setVars('title',$row['title'],true,'utf-8');
|
||||
@$odf->setVars('title_en',$row['title_en'],true,'utf-8');
|
||||
$odf->setVars('uuid',$row['uuid'],true,'utf-8');
|
||||
$odf->setVars('datetime',date('Y-m-d'));
|
||||
$odf->setVars('abstract',$row['description'],true,'utf-8');
|
||||
@$odf->setVars('theme_keyword',$row['keyword']['theme'],true,'utf-8');
|
||||
@$odf->setVars('place_keyword',$row['keyword']['place'],true,'utf-8');
|
||||
@$odf->setVars('temporal_keyword',empty($row['keyword']['temporal'])?'':$row['keyword']['temporal'],true,'utf-8');
|
||||
@$odf->setVars('discipline_keyword',$row['keyword']['discipline'],true,'utf-8');
|
||||
@$odf->setVars('stratum_keyword',$row['keyword']['stratum'],true,'utf-8');
|
||||
@$odf->setVars('category',$row['category'].' '.$row['category_zh'],true,'utf-8');
|
||||
@$odf->setVars('rfdenom',$row['rfdenom'],true,'utf-8');
|
||||
@$odf->setVars('resolution',$row['resolution'],true,'utf-8');
|
||||
@$odf->setVars('projection',$row['projection'],true,'utf-8');
|
||||
@$odf->setVars('filesize',$row['filesize'],true,'utf-8');
|
||||
@$odf->setVars('fileformat',$row['fileformat'],true,'utf-8');
|
||||
@$odf->setVars('timebegin',$row['timebegin'],true,'utf-8');
|
||||
@$odf->setVars('timeend',$row['timeend'],true,'utf-8');
|
||||
@$odf->setVars('citation',$row['citation'],true,'utf-8');
|
||||
@$odf->setVars('reference',$row['reference'],true,'utf-8');
|
||||
@$odf->setVars('doi',$row['doi'],true,'utf-8');
|
||||
@$odf->setVars('suppinfo',$row['suppinfo'],true,'utf-8');
|
||||
@$odf->setVars('uselimits',$row['uselimits'],true,'utf-8');
|
||||
@$odf->setVars('resources',$row['resources'],true,'utf-8');
|
||||
@$odf->setVars('contacts',$row['contacts'],true,'utf-8');
|
||||
@$odf->setVars('north',$row['north'],true,'utf-8');
|
||||
@$odf->setVars('south',$row['south'],true,'utf-8');
|
||||
@$odf->setVars('west',$row['west'],true,'utf-8');
|
||||
@$odf->setVars('east',$row['east'],true,'utf-8');
|
||||
$odf->setImage('bigthumb', 'http://test.westgis.ac.cn/service/bigthumb/uuid/'.$row['uuid']);
|
||||
$odf->setImage('thumb', 'http://test.westgis.ac.cn/service/thumb/uuid/'.$row['uuid']);
|
||||
$odf->exportAsAttachedFile($row['title'].'.odt');
|
||||
}
|
||||
}
|
||||
|
||||
$row['description']=$wiki->parseTable($row["description"]);
|
||||
preg_match_all('/<table>[\s\S]*?<\/table>/im', $row['description'],$tables);
|
||||
$search=array();
|
||||
$replace=array();
|
||||
foreach($tables as $k=>$table)
|
||||
{
|
||||
/*$search[]="<table>";
|
||||
$replace[]='<table:table table:name="Table 3">'.str_repeat('<table:table-column />',substr_count($table[0],'<th>'));
|
||||
$search[]="<tr>";
|
||||
$replace[]="<table:table-row>";
|
||||
$search[]="<td>";
|
||||
$replace[]="<table:table-cell><text:p>";
|
||||
$search[]="<th>";
|
||||
$replace[]="<table:table-cell><text:p>";
|
||||
$search[]="</td>";
|
||||
$replace[]="</text:p></table:table-cell>";
|
||||
$search[]="</th>";
|
||||
$replace[]="</text:p></table:table-cell>";
|
||||
$search[]="</tr>";
|
||||
$replace[]="</table:table-row>";
|
||||
$search[]="</table>";
|
||||
$replace[]="</table:table>";
|
||||
$table=str_replace($search,$replace,$table[0]);*/
|
||||
$row['description']=str_replace($tables[$k][0],"\n 【表格内容暂不支持,请访问网站查看,此处请忽略】\n",$row['description']);
|
||||
}
|
||||
|
||||
require_once('odtphp/library/odf.php');
|
||||
$config["PATH_TO_TMP"]="/tmp/zip";
|
||||
$config["ZIP_PROXY"]="ZipArchive";
|
||||
$odf=new Odf("../data/metadata-template.odt",$config);
|
||||
$odf->setVars('title',$row['title'],true,'utf-8');
|
||||
@$odf->setVars('title_en',$row['title_en'],true,'utf-8');
|
||||
$odf->setVars('uuid',$row['uuid'],true,'utf-8');
|
||||
$odf->setVars('datetime',date('Y-m-d'));
|
||||
$odf->setVars('abstract',$row['description'],true,'utf-8');
|
||||
@$odf->setVars('theme_keyword',$row['keyword']['theme'],true,'utf-8');
|
||||
@$odf->setVars('place_keyword',$row['keyword']['place'],true,'utf-8');
|
||||
@$odf->setVars('temporal_keyword',empty($row['keyword']['temporal'])?'':$row['keyword']['temporal'],true,'utf-8');
|
||||
@$odf->setVars('discipline_keyword',$row['keyword']['discipline'],true,'utf-8');
|
||||
@$odf->setVars('stratum_keyword',$row['keyword']['stratum'],true,'utf-8');
|
||||
@$odf->setVars('category',$row['category'].' '.$row['category_zh'],true,'utf-8');
|
||||
@$odf->setVars('rfdenom',$row['rfdenom'],true,'utf-8');
|
||||
@$odf->setVars('resolution',$row['resolution'],true,'utf-8');
|
||||
@$odf->setVars('projection',$row['projection'],true,'utf-8');
|
||||
@$odf->setVars('filesize',$row['filesize'],true,'utf-8');
|
||||
@$odf->setVars('fileformat',$row['fileformat'],true,'utf-8');
|
||||
@$odf->setVars('timebegin',$row['timebegin'],true,'utf-8');
|
||||
@$odf->setVars('timeend',$row['timeend'],true,'utf-8');
|
||||
@$odf->setVars('citation',$row['citation'],true,'utf-8');
|
||||
@$odf->setVars('reference',$row['reference'],true,'utf-8');
|
||||
@$odf->setVars('doi',$row['doi'],true,'utf-8');
|
||||
@$odf->setVars('suppinfo',$row['suppinfo'],true,'utf-8');
|
||||
@$odf->setVars('uselimits',$row['uselimits'],true,'utf-8');
|
||||
@$odf->setVars('resources',$row['resources'],true,'utf-8');
|
||||
@$odf->setVars('contacts',$row['contacts'],true,'utf-8');
|
||||
@$odf->setVars('north',$row['north'],true,'utf-8');
|
||||
@$odf->setVars('south',$row['south'],true,'utf-8');
|
||||
@$odf->setVars('west',$row['west'],true,'utf-8');
|
||||
@$odf->setVars('east',$row['east'],true,'utf-8');
|
||||
$odf->setImage('bigthumb', 'http://test.westgis.ac.cn/service/bigthumb/uuid/'.$row['uuid']);
|
||||
$odf->setImage('thumb', 'http://test.westgis.ac.cn/service/thumb/uuid/'.$row['uuid']);
|
||||
$odf->exportAsAttachedFile($row['title'].'.odt');
|
||||
}
|
||||
|
||||
function uploadAction(){
|
||||
$this->_helper->layout()->disableLayout();
|
||||
$this->_helper->viewRenderer->setNoRender();
|
||||
|
||||
try{
|
||||
$auth = Zend_Auth::getInstance();
|
||||
if($auth->hasIdentity())
|
||||
{
|
||||
$user = $auth->getIdentity();
|
||||
$userid = $user->id;
|
||||
}
|
||||
|
||||
if(empty($userid)||!is_numeric($userid)){
|
||||
$msg['error'] = "请先登录";
|
||||
echo Zend_Json::encode($msg);
|
||||
exit();
|
||||
}
|
||||
|
||||
$files=new files();
|
||||
$msg = $files -> upload($this->view->config->upload,$_FILES['Filedata'],'reviewatt');
|
||||
|
||||
if(empty($msg['error']))
|
||||
{
|
||||
$msg['error']="";
|
||||
$filename = $msg['db_path'];
|
||||
$filesize = $msg['file_size'];
|
||||
$filedesc = $this->_request->getParam('filedesc');
|
||||
$filetype = $this->_request->getParam('dir');
|
||||
$realname = $msg['realname'];
|
||||
|
||||
|
||||
$sql = "insert into attachments (filename,filetype,filedesc,userid,filesize,realname) values ('$filename','reviewatt','$filedesc','$userid','$filesize','$realname') RETURNING id";
|
||||
$sth = $this->db->prepare($sql);
|
||||
$sth->execute();
|
||||
$att = $sth->fetch(PDO::FETCH_ASSOC);
|
||||
$msg['attid'] = $attid = $att['id'];
|
||||
$msg['html'] = $realname.'[已完成]<input type="hidden" name="atts[]" value="'.$attid.'" /><div class="cancel"><a href="javascript:;" id="deletebtn_'.$attid.'"><img border="0" src="/static/js/uploadify/cancel.png" /></a></div>';
|
||||
echo Zend_Json::encode($msg);
|
||||
exit();
|
||||
}else{
|
||||
$msg['error'] = '附件上传失败:'.$msg['error'];
|
||||
@unlink($filename);
|
||||
echo Zend_Json::encode($msg);
|
||||
exit();
|
||||
}
|
||||
|
||||
}catch(Exception $e){
|
||||
$msg['error'] = "错误:".$e->getMessage();
|
||||
echo Zend_Json::encode($msg);
|
||||
exit();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -189,7 +189,7 @@ $(document).ready(function() {
|
|||
$('#file_upload').uploadify({
|
||||
'uploader' : '/static/js/uploadify/uploadify.swf',
|
||||
'scriptData': {'PHPSESSID' : '<?php echo session_id(); ?>'},
|
||||
'script' : '/upload',
|
||||
'script' : '/service/upload',
|
||||
'cancelImg' : '/static/js/uploadify/cancel.png',
|
||||
'folder' : '/uploads',
|
||||
'multi' : false,
|
||||
|
|
Loading…
Reference in New Issue