如何将PHP变量传递给Laravel DB :: withoutpared查询

时间:2016-11-21 23:51:23

标签: php mysql laravel-5.1

使用Laravel 5.1。我在下面有这个查询。它在phpMyAdmin中工作正常。如果我对currentSize$category进行硬编码,它也会有效。但是,没有多少连接和/或转义的转义使查询在我的控制器中运行。我正在使用$value我尝试用单引号和双引号封装查询,但没有效果。我正在使用PHPStorm,它甚至说查询是正确的,但事实并非如此。我究竟做错了什么 ??

use Illuminate\Support\Facades\DB;

TKS !!

1 个答案:

答案 0 :(得分:0)

当你知道怎么做时很容易。忘记连接或反斜杠。只需使用:

$category = $request->input('parent_category');
$value = $request->input('new_category');

$result = DB::unprepared("
LOCK TABLE nested_categories WRITE;
SELECT @myLeft := lft FROM nested_categories
WHERE name =  '$category';
UPDATE nested_categories SET rgt = rgt + 2 WHERE rgt > @myLeft;
UPDATE nested_categories SET lft = lft + 2 WHERE lft > @myLeft;
INSERT INTO nested_categories(name, lft, rgt) VALUES( '$value', @myLeft + 1, @myLeft + 2);
UNLOCK TABLES;");