我是一个初学者在laravel.我有问题尝试张贴到路由.我不使用任何形式(形式行动="”方法=“POST”).我认为问题可能是在我的控制器.
这是我的按钮:
<div class="button0">
<button
type="button"
class="btn btn-primary"
style="margin:20px 150px 0 0; float: right; width:100px"
id="btnInsert"
>
Insert
</button>
</div>
字符串
以下是我的剧本:
$("#btnInsert").click(function () {
var productid = $("#productid").val();
var productname = $("#productname").val();
var productprice = $("#productprice").val();
var productdes = $("#productdes").val();
var productimage = $("#productimage").val();
var productcate = $("#cate").val();
if (productid == "") {
alert("Empty Product ID");
} else {
// it doesn't work after this
$.post("/addproduct", {
productid: productid,
productname: productname,
productprice: productprice,
productdes: productdes,
productimage: productimage,
productcate: productcate,
}),
function (result) {
if (result == 1) {
alert("Record has been added");
window.location.href = "/product";
}
};
}
});
型
这是我的路线:
Route::post('/addproduct',[ProductController::class, 'AddProduct']);
型
这是我的控制器,这里可能有些错误。
public function AddProduct(Request $request){
try{
$productid = $request->productid ;
$productname = $request->productname;
$productprice = $request->productprice;
$productdes = $request->productdes;
$productimage = $request->productimage;
$categoryid = $request->categoryid;
$result = DB::table('tblproduct')->insert(['ProductID'=>$productid,
'ProductName'=>$productname,
'ProductPrice'=>$productprice,
'ProductDes'=>$productdes,
'ProductImage'=>$productimage,
'CategoryID'=>$categoryid]);
if ($result) {
return redirect()->route('product.InsertProduct');
} else {
echo "Insert failed: " . DB::getErrorMessage();
}
}
catch (Exception $ex){
echo ($ex);
}
}
型
3条答案
按热度按时间mgdq6dx11#
首先点击这些工匠命令:
字符串
或者您可以使用
型
然后在api.php文件中修改你的url:coz apis,
型
希望,它会帮助你
qzlgjiam2#
你的方法也很好,但正如你所说,你是初学者,所以我建议你必须阅读laravel文档并练习MVC方法。
始终使用路由,并确保每条路由都有不同或唯一的名称,或者您可以创建一组路由
路线
字符串
团体路线
型
型
创建控制器:
型
创建模型
Product
和迁移连接或保存表中的数据。我希望这将帮助你,或者你可以问任何你想要的。快乐编码!g0czyy6m3#
你的Laravel代码很好,但你的JS代码有问题。
你忘记在post请求后使用done回调函数。
字符串
希望它能帮助你