0
Dosyaları yüklemeye çalışıyorum. 2mb'den az dosya yüklediğimde sorun yok. Ben 2MB'den daha büyük çalışıyorum Ama ne zaman ölümcül hatayı alıyorum: Bu aradaBüyük dosya yükleme yii2
Call to a member function saveAs() on null
, formda doğrulama başarılı olduğunu: Kurallar iyi çalışır.
Orada benim modeli sınıftır:
class UploadForm extends Model
{
/**
* @var UploadedFile
*/
public $xmlFile;
public function rules()
{
return [
[['xmlFile'], 'file', 'maxSize' => 20480000, 'tooBig' => "Limit is 20mb"],
];
}
public function upload()
{
if ($this->validate()) {
$this->xmlFile->saveAs('uploads/xml/' . $this->xmlFile->baseName . '.' . $this->xmlFile->extension);
return true;
} else {
return false;
}
}
}
Ve işte benim biçimidir:
<?php $form = ActiveForm::begin(['options' => ['enctype' => 'multipart/form-data']]) ?>
<?= $form->field($model, 'xmlFile')->fileInput() ?>
<button>Submit</button>
<?php ActiveForm::end() ?>
Benim eylemi:
sorun sınırları içinde gibi görünüyorif (Yii::$app->request->isPost) {
$model->xmlFile = UploadedFile::getInstance($model, 'xmlFile');
if ($model->upload()) {
//$import->import($model);
return $this->render('upload', ['model' => $model, 'message' => "Success"]);
}
}
Plz parametrelerinin değerlerini kontrol edin, sunucu ayarlarınızı kontrol edin. Genellikle php.ini dosyanızdaki sınırlar varsayılan olarak 2mb'ye ayarlanmıştır. 'Upload_max_filesize' ve' post_max_size' –
@s_mart Yeeaah parametresinin değerlerini kontrol edin! Şimdi çalışıyor! –
Harika, bunu cevap olarak ekleyeceğim :) İyi şanslar –