Davood
5 سال پیش توسط Davood مطرح شد
3 پاسخ

اعتبارسنجی با php

سلام
من دارم از این پکیج استفاده میکنم برای اعبار سنجی داده هام

Rakit Validation

داخل متد insert خبر به عنوان مثال میخوام ازش استفاده کنم

public function insert()
    {
        $cat = $this->Post->cat();
        $city = $this->Post->city();
        $user = $this->Post->getUser();
        if ($_SERVER['REQUEST_METHOD'] == "POST" and isset($_POST['send'])) {
            $img = $_FILES['pic'];
            $img = $this->uploadFile($img, 'news');

            $validation = $this->validator->validate($_POST,[
                'titr'=>'required',
                'body'=>'required'
            ]);

            if($validation->fails()){
                $errors = $validation->errors();
                $errors = $errors->firstOfAll();
}          
                $this->Post->addNews($_POST, $img);
                header("location:list");

        }
        return View::renderTemplate('admin.news.insert', ["cat" => $cat,"user"=>$user,"city"=>$city]);
    }

اون $errors رو وقتی print_rمیکنم تو کنترلر کامل درست کار میکنه
ولی من میخوام این آرایه ارور رو بفرستم به ویو بالای فرم نمایش بدم اما نمیدونم چطوری
لطفا کمکم کنید

@hesammousavi


ثبت پرسش جدید
حسام موسوی
تخصص : طراح و برنامه نویس
@hesammousavi 5 سال پیش مطرح شد
1

خوب مشخصه دیگه دوست من
در کد زیر

            if($validation->fails()){
                $errors = $validation->errors();
                $errors = $errors->firstOfAll();
}

شما ارورها رو میگیری . خوب باید به همراه renderTemplate ارسال بفرمایی error رو به ویو خودتون .
البته چون errors فقط اونجا مقدار دهی میشه باید قبلش مثلا مقدار errors رو برابر null قرار بدید که اگر اروری بود مقدار دهی بشه
اینطوری در ویو هم میتونید چک کنید اگر null نبود ارورها نشون داده بشن


Davood
تخصص : PHP - Laravel
@dfardabasi 5 سال پیش مطرح شد
0

ببخشید یه سوال دیگه اینا رو نمیشه فارسی کرد؟؟؟؟

پیغام ارورش میاد مثلا من دو تا ارور دارم

میگه فیلد title را پر کنید
فیلد body را پر کنید

من نمیخوام title و body بنویسم
میخوام مثلا باشه عنوان خبر و متن خبر

@hesammousavi


سبحان دادخواه
تخصص : دانشجوی برنامه نویسی :)
@SobhanDadkhah 5 سال پیش مطرح شد
0

سلام . شمما فقط کافیه این مسیر رو دنبال کنید :

resources->lang->fa->validation.php  

و داخل این فایل که ارور های فارسی هست attributes یک آرایس که مقادیر input name هارو میگیره . مثلا برای اینکه نام یک اینپوت رو فارسی کنید اینطوری عمل کنید :

 'attributes' => array(
"title" => "عنوان"
)

به همین صورت میتونید برای نام هایی که برای اینپوت هاتون انتخاب میکنید فارسی سازیشون کنید.
اما خوب این حالت گلوبال هست یعنی برای تمامی اینپوت هایی با نام title ارور "عنوان را وارد کنید" رو نشون میده. اینکه برای هر اینپوت توی هر صفحه ارور یونیک بذارید رو هنوز نرفتم دنبالش . انشالا اساتید هم شما و هم منو راهنمایی میکنن تو این مورد
موفق باشید
@dfardabasi


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

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