Ad

Why Laravel's Queries Return Nvarchar Instead Of Int?

- 1 answer

i have thoses lines of code :

 $idprat = Praticien::select('ID_Praticien')->where('NOM',$request->input('ID_Praticien'))->get();
        $mission->ID_Praticien = $idprat;

and i have this error message :

la valeur nvarchar '[{"ID_Praticien":1}]' en type de données int

why it's return me nvarchar on a int column on my database ? i tried to make it correct like this :

$idprat = Praticien::select('ID_Praticien')->where('NOM',$request->input('ID_Praticien'))->get()->first();

and i tried with :

 $mission->ID_Praticien = (int)$idprat;

but doesnt work

i just selected ID_Praticien value not an array xD

thanks for help ;)

Ad

Answer

Try this:

$idprat = Praticien::select('ID_Praticien')->where('NOM',$request->input('ID_Praticien'))->get();
        $mission->ID_Praticien = $idprat[0]->ID_Praticien;

or

$idprat = Praticien::select('ID_Praticien')->where('NOM',$request->input('ID_Praticien'))->first();
        $mission->ID_Praticien = $idprat->ID_Praticien;
Ad
source: stackoverflow.com
Ad