SQLSTATE[HY000]: General error: 21 bad parameter or other API misuse - in pyrocms

744 Views Asked by At

I'm developing a web site on pyrocms and it worked fine on my laptop (WAMP environment). But it gives me an error SQLSTATE[HY000]: General error: 21 bad parameter or other API misuse when I try this in my ubuntu server.

Server's PHP version - 7.2.13

I found this issue in GitHub but I'm not clear what they suggesting.

My form's code

{% 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'
                }
.
.
.
.

and my form handlers code is this.

<?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();

    }

}

As my observations, error occurred only on data insertions.

enter image description here

as I highlighted above in red, it gives my desired response after series of error messages btw. Is anyone know how to fix this? Thanks

0

There are 0 best solutions below