Yii, сохранение изображения из $ FILES, но без использования моделей
это возможно ? Это с моделью
CUploadedFile::getInstance($model,'newsimage');
$model->image->saveAs("imagepath")
но я не хочу создавать модель, чтобы сохранить свое изображение.
на самом деле мне это нужно... ну, я пытаюсь заставить функцию "загрузить изображение" CKEditor работать, но мне нужен скрипт для сохранения изображения.
Когда я нажимаю кнопку "загрузить изображение", я просто вызываю действие, и оттуда у меня есть доступ к выбранному изображению, используя $_FILES
, но я не могу сохранить файл в целевой объект справочник.
можно ли сохранить файл в целевой путь ("C:myProjectimages" например) и не использовать модель ?
EDIT:
вот решение, которое я нашел немного позже
Файл я загружаю в $_FILES['upload']
так ..
$temp = CUploadedFile::getInstanceByName("upload"); // gets me the file into this variable ( i gues this wont work for multiple files at the same time )
$temp->saveAs("D:/games/" . $temp->name); // full name , including the filename too.
1 ответов
предполагая, что "без модели"="без таблицы БД"
вы просто сделать UploadForm.php, расширяющийся из CFormModel в каталоге моделей
class UploadForm extends CFormModel
{
public $upload_file;
public function rules()
{
return array(
array('upload_file', 'file', 'types'=>'jpg,jpeg,gif,png','maxSize'=>10*1024*1024),
);
}
/**
* Declares attribute labels.
*/
public function attributeLabels()
{
return array(
'upload_file'=>'Upload File',
);
}
}
и в геймпаде
$model->upload_file=CUploadedFile::getInstance($model,'upload_file');
$model->upload_file->saveAs("C:\myProject\images\".$model->upload_file->name)