我是 mongodb 的新用户,我正在使用 cakephp。我正在尝试从ichikaway 测试cakephp 的插件。这个插件允许 cakephp 使用 mongodb(NoSql 数据库)。所以,我想知道是否有人已经尝试过上传图片?
问问题
296 次
2 回答
0
我试试这个,它有效!
<?php
class ProductsController extends AppController {
public $name = 'Products';
public function add(){
if ($this->request->is('post')){
debug($this->request->data);
$dir = IMAGES.date('Y');
if (!file_exists($dir))
mkdir($dir);
$dir .= DS.date('m');
if (!file_exists($dir))
mkdir($dir);
$f = explode('.', $this->request->data['Product']['file']['name']);
$ext = '.'.end($f);
$filename = Inflector::slug(implode('.',array_slice($f,0,-1)),'-');
debug($ext);
debug($filename);
$data = array(
'name' => $this->request->data['Product']['name'],
'url' => date('Y').'/'.date('m').'/'.$filename.$ext
);
//debug($data);
if ($this->Product->save($data)){
move_uploaded_file($this->request->data['Product']['file']['tmp_name'], $dir.DS.$filename.$ext);
$id = $this->Product->getInsertId();
debug($id);
}
}
}
于 2012-08-14T09:09:55.293 回答
0
cakephp-mongodb库似乎没有提供与GridFS交互的API 。您最好的选择可能是使用MongodbSource::getMongoDb()方法获取MongoDB实例,然后直接访问MongoGridFS类。PHP 文档包含几个用于将文件(包括上传的文件)存储到 GridFS 的示例。
于 2012-08-13T18:32:34.550 回答