نوب
2 سال پیش توسط نوب مطرح شد
2 پاسخ

خطای Incorrect datetime value در لاراول 8

@mhyeganeh
@erfanmohseni406
سلام
من دارم اطلاعات وارد میکنم توی دیتابیس خطای زیر را میده

SQLSTATE[22007]: Invalid datetime format: 1292 Incorrect datetime value: '24' for column `database_name`.`payments`.`wallet_id` at row 1 (SQL: insert into `payments` (`user_id`, `amount`, `transactionId`, `ReferenceId`, `error`, `driver`, `target_id`, `bug_id`, `wallet_id`, `status`, `updated_at`, `created_at`) values (2, 1000, a2509a03-2e62-4c21-9eb4-175e492c978d, ?, ?, payping, ?, ?, 24, unpaid, 2021-11-09 15:12:31, 2021-11-09 15:12:31))

ساختار دیتابیس هم درسته

کد متد ورود اطلاعات
نکته : توی کد زیر هنگام ورود اطلاعات اگر updatedat و createdat هم بردارم که خودش اتوماتیک بزنه بازم همون خطا را میده.

    public function add(Request $request)
    {
        $data = $request->validate([
            'amount' => ['required', 'string'],
        ]);
        $wallet_add = wallet::create([
            'user_id' => Auth::user()->id,
            'price' => $data['amount'],
            'type' => 'deposit',
            'about' => '7',
        ]);
        if ($wallet_add) {
            $driverConfig = config()->get('payment.default');
            $price = $data['amount'];
            settype($price, 'int');
            $invoice = (new Invoice)->amount($price);
            return shetabitPayment::via($driverConfig)->callbackUrl(route('payment.callback'))->purchase($invoice, function ($driver, $transactionId) use ($wallet_add, $price, $driverConfig, $invoice) {
                $wallet_add->payment()->create([
                    'user_id' => auth()->user()->id,
                    'amount' => $price,
                    'transactionId' => $invoice->getUuid(),
                    'ReferenceId' => null,
                    'error' => null,
                    'driver' => $driverConfig,
                    'target_id' => null,
                    'bug_id' => null,
                    'wallet_id' => $wallet_add->id,
                    'status' => 'unpaid',
                    'updated_at' => Carbon::now(),
                    'created_at' => Carbon::now(),
                ]);
            })->pay()->render();
        }
    }

بخش تایم هم که با کد زیر توی migrate زدم

$table->timestamps();

ثبت پرسش جدید
امیر حسین شکوهی
تخصص : web developer
@amirshokoohi 2 سال پیش آپدیت شد
0

@yk5742g
نوع wallet_id تو جدول payments چی تعریف شده ؟
ارور میگه مقدار 24 که برای wallet_id مشخص شده نادرسته


نوب
تخصص : کدنویس نوب :)
@yk5742g 2 سال پیش مطرح شد
0

@amirshokoohi
وااااااااااااااااااای اصلا ندیدم :)))))))
اشتباهی نوعشو زده بودم timestamp
😂😂😂😂😂😂


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

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