SQLSTATE [HY000]: общая ошибка: неверный параметр 21 или другое неправильное использование API - в пиро-системах - PullRequest
0 голосов
/ 22 января 2019

Я занимаюсь разработкой веб-сайта на пирограммах, и он отлично работал на моем ноутбуке (среда WAMP). Но это дает мне ошибку SQLSTATE[HY000]: General error: 21 bad parameter or other API misuse, когда я пытаюсь это сделать на моем сервере Ubuntu.

Версия PHP сервера - 7.2.13

Я обнаружил эту проблему в github, но мне не ясно, что они предлагают.

Код моей формы

{% set company_types = {} %}

    {% set form = form({
        'ajax': true,
        'options': {
            'redirect': '/merchants/mobile/pin/get',
        },
        'handler': 'Ksn\\CompanyModule\\Company\\Form\\CompanyFormHandler@handle',
        'fields': {
            'name':{
                'type':'text',
                'required':true,
                'label': 'Comapany Name'
                }
.
.
.
.

и мой код обработчиков форм таков.

<?php namespace Ksn\CompanyModule\Company\Form;


use Anomaly\UsersModule\User\UserRepository;
use Illuminate\Contracts\Auth\Guard;
use Illuminate\Foundation\Bus\DispatchesJobs;
use Anomaly\Streams\Platform\Ui\Form\FormBuilder;
use Ksn\CompanyModule\Company\Contract\CompanyRepositoryInterface;

class CompanyFormHandler
{
    use DispatchesJobs;

    public function handle(
        Guard $auth,
        UserRepository $users,
        FormBuilder $builder,
        CompanyRepositoryInterface $companyRepository
    )
    {
        if(!$user = $auth->user()) {
            abort(404);
        }


        $values = $builder->getFormValues();

        $company_arr = [];
        foreach ($values as $key => $value)
        {
            if($key == 'mobile')
            {
                $user->telephone = $value;
                continue;
            }
            $company_arr[$key] = $value;
        }

        $company = $companyRepository->newInstance($company_arr);
        $company->save();

        $user->company_id = $company->getAttribute('id');

        // generate random pin
        $digits = 4;
        $user->mobileverificationpin = rand(pow(10, $digits-1), pow(10, $digits)-1);
        $user->status = 4;
        $user->save();


        //dd($company->getAttribute('id'));

        return $builder->getFormResponse();

    }

}

Как показывают мои наблюдения, ошибка произошла только при вставке данных.

enter image description here

, как я выделил выше красным, он дает желаемый ответ после серии сообщений об ошибках между прочим. Кто-нибудь знает, как это исправить? Спасибо

...