将 Yii2 中的变量插入数据库

Inserting variables in Yii2 to Database

我正在尝试将 $product$pric$user 插入数据库 table cart。以下是我在 SiteController.php.

中创建的函数
public function actionCartadd($id)
        {
                $product = Additem::find()
                        ->select('product')
                        ->where(['id' => $id])
                        ->one();
                $pric =  Additem::find()
                        ->select('price')
                        ->where(['id' => $id])
                        ->one();

                $user = Yii::$app->user->identity->username;


                $connection = Yii::$app->getDb();

                $result = Yii::$app->db->createCommand()
                        ->insert('cart', [
                        'product' => '$product',
                        'price' => '$pric',
                        'user' => '$user',
                        ])->execute();
                if ($result)
                         return $this->render('custstore');
        }

然而,这以错误告终。谁能提出任何修复建议

看看这个片段:

'product' => '$product',
'price' => '$pric',
'user' => '$user',

在值中使用双引号或仅使用不带引号的变量

此外,获取产品和价格的更好方法:

$productItem = Additem::findOne($id);
if ($productItem instanceof Additem) {
    $product = $productItem->product;
    $pric = $productItem->price;
}

试试下面的代码

$result = Yii::$app->db->createCommand()->insert('cart', [
    'product' => $product->product, 
    'price' => $pric->price,
    'user' => $user
])->execute();