• 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
عدم دریافت خطا هنگام انتخاب فایل های حجیم برای آپلود
#1
دوستان سلام
یه فرم آپلود دارم وقتی فایل تکی با سایز بزرگ انتخاب می کنم خطا میده ولی وقتی چندتایی انتخاب می کنم کلا این خطا رو میده:
نقل قول:Bad Request (#400)
Unable to verify your data submission.

The above error occurred while the Web server was processing your request.

Please contact us if you think this is a server error. Thank you.
حالا توی این تاپیک در موردش حرف زدم یکی از توسعه دهنده های yii با شک گفته که قابل حل نیست
چیکار می شه کرد؟
  پاسخ
تشکر شده توسط :
#2
کد آپلود ویو رو بزار
همه جوره اش رو داریم ظاهرن
  پاسخ
تشکر شده توسط :
#3
توی لینک بالا کلی بحث کردمو کد ها هم هست
http://www.yiiframework.com/forum/index...._p__265007
  پاسخ
تشکر شده توسط :
#4
اونجا هم کدت نیست!!!

وقتی فرم می سازی توی ویو
کد پی‌اچ‌پی:
'options' => ['enctype'=>'multipart/form-data'
این رو هم قرار می دی؟
همه جوره اش رو داریم ظاهرن
  پاسخ
تشکر شده توسط :
#5
اره

سعی کردم کدقسمت های لازم رو اونجا بذارم
شما کد کجاشو منظورتونه تا بذارم اونم

controller:
کد پی‌اچ‌پی:
public function actionCreate()
    {
        
$model = new Item();
        
$images = new Images();
        
        if(
            (
$_GET['category_id'] < 1) ||
            !isset(
$_GET['category_id']) ||
            !
is_numeric($_GET['category_id'])
        ) throw new 
NotFoundHttpException('Category ID is not defined or acceptable!');
        
        if (
$model->load(Yii::$app->request->post()) ) {
            if(
Yii::$app->request->isPost){
                
$images->images UploadedFile::getInstances($images'images');
                if(
$model->validate() && $images->validate()){
                    
$imageNames = array();
                    foreach(
$images->images as $key => $value){
                        
$imageNames[] = (string)time() . '_' $key '.' $images->images[$key]->extension;
                        
$images->images[$key]->saveAs('..\\..\\images\\' $imageNames[$key] );
                    }
                    
$model->pic base64_encode(serialize($imageNames));
                    
$model->category_id $_GET['category_id'];
                    
$model->date time();
                    
                    if(
$model->save()) return $this->redirect(['view''id' => $model->id]);
                    else throw new 
NotFoundHttpException('Item can not be saved!');
                    
                }else return 
$this->render('create', ['model'=>$model'images'=>$images,]);
            }
        } else return 
$this->render('create', ['model' => $model'images'=>$images,]);
    } 


images model:
کد پی‌اچ‌پی:
<?php
namespace common\models;

use 
yii\base\Model;
use 
yii\web\UploadedFile;

class 
Images extends Model
{
    public 
$images = array();

    public function 
rules(){
        return [
            [[
'images'], 'required'],
            [[
'images'], 'file''extensions' => ['jpg''png'], 'maxFiles' => 20],
        ];
    }
    



view:
کد پی‌اچ‌پی:
<div class="item-form">

    <?
php $form ActiveForm::begin(['options'=>['enctype'=>'multipart/form-data']]); ?>

     ....
     ....
    <?= $form->field($images'images[]')->fileInput(['multiple' => true]);?>
     ....
     .... 
  پاسخ
تشکر شده توسط :
#6
خب اون بخش رو هم دارید.
معمولن به خاطر encrypt این اتفاق می افته
application.log توی runtime چیزی نشون نمیده؟
همه جوره اش رو داریم ظاهرن
  پاسخ
تشکر شده توسط :


پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان