Pytanie w sprawie frameworks, ckeditor, yii – Yii, zapisywanie obrazu z $ _FILES, ale bez użycia modeli

6

Czy to możliwe ? To jest z modelem

  CUploadedFile::getInstance($model,'newsimage');
  $model->image->saveAs("image\path")

ale nie chcę tworzyć modelu tylko po to, aby zapisać obraz.

To, czego potrzebuję, to ... cóż, staram się, aby funkcja „Prześlij obraz” CKEditor działała, ale potrzebuję skryptu do zapisania obrazu. Kiedy klikam przycisk „Prześlij obraz”, po prostu wywołuję akcję i stamtąd mam dostęp do zdjęcia, które wybrałem, używając$_FILES, ale nie mogę zapisać pliku do katalogu docelowego.

Czy można zapisać plik na ścieżce docelowej (na przykład „C: myProject”) i nie używać modelu?

EDYTOWAĆ :

Oto rozwiązanie, które znalazłem nieco później. Plik, który przesyłam, jest dostępny$_FILES['upload'] więc ..

$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.
Zapomniałem wspomnieć, jestem całkowicie nowy na Yii, proszę nie krzycz na mnie za zadawanie głupich pytań. Jordashiro

Twoja odpowiedź

1   odpowiedź
8

Zakładając, że „bez modelu” = „bez tabeli db”

Po prostu utwórz UploadForm.php rozszerzający się z CFormModel w katalogu modeli

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',
        );
    }

}

i w kontrolerze

$model->upload_file=CUploadedFile::getInstance($model,'upload_file');
$model->upload_file->saveAs("C:\myProject\images\".$model->upload_file->name)
nie zapisuję pliku tekstowego, którego próbowałem, ale nie mam szczęścia Erum
Dziękuję, spróbuję :) Jordashiro

Powiązane pytania