jaber
5 سال پیش توسط jaber مطرح شد
8 پاسخ

پیشنهاد راهکار برای مقدار دهی به یک متغیر

سلام دوستان در دوقطعه کد زیر متد اول یه سری فیلتر اعمال میکنه و نتایج رو برمیگردونه به یک ویو و متد دوم برای یک دکمه هست که
تو همون ویو قبلی که نتایج رو داد هست و میخوام با استفاده از یک پکیج خروجی اکسل بگیرم !

حالا مشکل اینجاست من چطور میتونم این متغیر رو مقدار دهی کنم که دقیقا همین اخرین فیلتری که تو متد قبلی اعمال شده رو نتایجش رو بگیره و بفرسته برای پکیج ممنون

 public function result(Request $request)
    {
        $customers = Order::whereDate('created_at','>=', date('Y-m-d',$request->startDateT))
            ->whereDate('created_at','<=', date('Y-m-d',$request->endDateT))
            ->admins($request->code)
            ->size($request->size)
            ->customers($request->kindBuy)
            ->kind($request->kind)
            ->latest()->get();

        return view('panel.report.result',compact('customers'));
    }
    public function export()
    {
        $customers = ''; // اطلاعات رو  میخوام از متد قبلی بیاد اینجا
        if ($customers->count() != 0){
            $time=carbon::now();
            return Excel::download(new OrderExport($customers), "{$time}.customers.xlsx");
        }
        alert()->warning('اطلاعاتی جهت گزارش یافت نشده است', 'بدون اطلاعات');
        return back();
    }

ثبت پرسش جدید
mkt
@mkt 5 سال پیش مطرح شد
1

اگه امکان تغییر اطلاعات در فرم وجود نداره از سشن استفاده کن


mkt
@mkt 5 سال پیش آپدیت شد
0

سلام .
برای گرفتن خروجی به صورت اکسل نمیشه اطلاعات فرم را دوباره بفرستی به سمت تابع export
یا

خوب اطلاعات Request را در سشن ذخیره کن بعد تو تابع export ازش استفاده کن.
سوال کمی گنگه


jaber
تخصص : برنامه‌نویس
@jabersabzali 5 سال پیش مطرح شد
0

میشه دوباره بفرستم اما دوباره کاری میشه فک کنم همین سشن خوب باشه


mkt
@mkt 5 سال پیش مطرح شد
1

اگه امکان تغییر اطلاعات در فرم وجود نداره از سشن استفاده کن


jaber
تخصص : برنامه‌نویس
@jabersabzali 5 سال پیش مطرح شد
0

  public function result(Request $request)
    {
        $customers = Order::whereDate('created_at','>=', date('Y-m-d',$request->startDateT))
            ->whereDate('created_at','<=', date('Y-m-d',$request->endDateT))
            ->admins($request->code)
            ->size($request->size)
            ->customers($request->kindBuy)
            ->kind($request->kind)
            ->latest()->get();
        Session::set('customers', $customers);
        return view('panel.report.result',compact('customers'));
    }
    public function export()
    {
        $customers = Session::get('customers');
        dd($customers);
        if ($customers->count() != 0){
            $time=carbon::now();
            return Excel::download(new OrderExport($customers), "{$time}.customers.xlsx");
        }
        alert()->warning('اطلاعاتی جهت گزارش یافت نشده است', 'بدون اطلاعات');
        return back();
    }

و این ارور

"Call to undefined method Illuminate\Session\Store::set()"

jaber
تخصص : برنامه‌نویس
@jabersabzali 5 سال پیش مطرح شد
0

@kazemimorteza68
ممنون اوکی شد ! فقط خاستم بدونم این کار درست هست درکل یا نه ؟؟‌چون من تازه کار هستم :))


mkt
@mkt 5 سال پیش مطرح شد
1

پیشنهاد من اینه اطلاعات Request را به صورت کلی ذخیره نکن فقط اون چند پارامتری که احتیاج داری مثلا:

$request->code
$request->size

mkt
@mkt 5 سال پیش مطرح شد
1

اگه بعد از اینکه اطلاعات را تو ویو نشون دادی و برای اکسپورت گرفتن به صورت اکسل اگه اطلاعات فرم تغییر نمیکنه ظاهرا اوکی هست.
چون اطلاعات مهمی در سشن قرار نمیگیره از لحاظ امنیتی مشکلی نداره.


jaber
تخصص : برنامه‌نویس
@jabersabzali 5 سال پیش مطرح شد
1

@kazemimorteza68 ممنون از راهنماییت دوست عزیز


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام