我正在尝试从表单中向数据库中添加一些数据,但是我有一个例外:
<script>
$("html").contextmenu(function(e) {
e.preventDefault();
});
</script>
这意味着我不能插入ID_ARTICLE,它是一个整数 这是我的查询:
公共功能存储(请求$ request) { $ annonce =新的名词;
SQLSTATE[HY000]: General error: 1366 Incorrect integer value: '[{"ID_ARTICLE":58}]' for column 'ID_ARTICLE' at row 1 (SQL: insert into `annonce` (`TITRE_ANNONCE`, `TYPE_ANNONCE`, `PRIX`, `ID_ARTICLE`) values (titre, 1, 100, [{"ID_ARTICLE":58}]))
我试图替换
$IDARTICLE = DB::table('article')
->select('ID_ARTICLE')
->where('NOM_ARTICLE', $request->NOM_ARTICLE)
->get();
$annonce->TITRE_ANNONCE = $request->TITRE_ANNONCE;
$annonce->TYPE_ANNONCE = $request->TYPE_ANNONCE;
$annonce->PRIX = $request->PRIX;
$annonce->ID_ARTICLE = $IDARTICLE;
$annonce->save();
return ($annonce);
}
与
$annonce->ID_ARTICLE = $IDARTICLE;
从列表中检索整数值,但显示另一个错误:此集合实例上不存在属性[ID_ARTICLE]。
当我们看到它存在时 任何帮助将不胜感激
答案 0 :(得分:0)
您的变量$IDARTICLE
包含多个结果集。您必须获取特定记录的ID并插入到另一个这样的表中。
$IDARTICLE = DB::table('article')
->select('ID_ARTICLE')
->where('NOM_ARTICLE', $request->NOM_ARTICLE)
->first();
$annonce->TITRE_ANNONCE = $request->TITRE_ANNONCE;
$annonce->TYPE_ANNONCE = $request->TYPE_ANNONCE;
$annonce->PRIX = $request->PRIX;
$annonce->ID_ARTICLE = $IDARTICLE->ID_ARTICLE;
$annonce->save();
return ($annonce);