راکت
حل شده

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

3 پاسخ

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

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

ثبت پرسش جدید

پاسخ‌ها

3
حسام موسوی
حسام موسوی
@hesammousavi

تخصص: طراح و برنامه نویس

بهترین پاسخ

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

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

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

Davood
Davood
@dfardabasi

تخصص: PHP - Laravel

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

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

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

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

@hesammousavi

سبحان دادخواه
سبحان دادخواه
@SobhanDadkhah

تخصص: دانشجوی برنامه نویسی :)

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

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

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

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

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

شاید پاسخ شما همین‌جا باشد

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

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