Процедура DB :: select возвращает пустой массив из запроса ввода - PullRequest
0 голосов
/ 21 января 2020

Я создал эту функцию в моем контроллере:

public function productInvoiceListTest(Request $request){
    $var = $request->client_id;
    $date = "2019-12-30";

    $sql = 'CALL proc_invoice_product_list("'.$var.'","i.invoice_date","2019-12-30","","")';

    $productinvoice = DB::select($sql);
    var_dump($productinvoice);
}

Когда я запускаю код, он возвращает пустой массив, но когда я жестко кодирую значение $var, оно работает:

public function productInvoiceListTest(Request $request){
    $var = 'dasdsdasdsadsadsa';
    $date = "2019-12-30";

    $sql = 'CALL proc_invoice_product_list("'.$var.'","i.invoice_date","2019-12-30","","")';

    $productinvoice = DB::select($sql);
    var_dump($productinvoice);
}

Почему, когда я использую ввод из запроса, не могу вызвать мою процедуру? Как читать из запроса ввода?

1 Ответ

0 голосов
/ 21 января 2020

Может потребоваться сначала подтвердить, что client_id передается в ваш метод productInvoiceListTest с помощью помощника dd.

public function productInvoiceListTest(Request $request){
    dd($request->all());
}

Если client_id является частью переданного экземпляра запроса в вашем методе productInvoiceListTest вы можете получить к нему доступ, используя метод $ request-> input ('client_id'). Если он не является частью экземпляра запроса, убедитесь, что из метода, вызывающего или перенаправляющего на productInvoiceListTest , передается client_id .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...