在Laravel 8中存储来自API的多个数据
public function saveOrder(Request $request)
{
$sid = explode(",", $request->subcat_id);
$quan = explode(",", $request->quantity);
$amnt = explode(",", $request->amount);
$c = count($sid);
for($i=0; $i < $c; $i++) {
$order = new Order();
$order->quantity = $quan[$i];
$order->amount = $amnt[$i];
$order->subcat_id = $sid[$i];
$order->address = $request->address;
$order->payment_mode = $request->payment_mode;
$order->order_no = $this->generateOrderNR();
if ($request->hasFile('image')) {
echo "in".$i;
$file = $request->file('image');
$file_name = time() . rand(1, 999) . '.' . $file->getClientOriginalExtension();
$file->move(base_path('images/orders/'), $file_name);
$order->image = $file_name;
}
if ($order->save()) {
echo "Order";
//return response()->json(['status' => 200, 'msg' => 'Order Placed Successfully']);
} else
echo "Error";
//return response()->json(['status' => 200, 'msg' => 'Error Occured']);
}
}
in0顺序in1 { “消息”:“文件” 277762619_112136134785398_1736805384468006822_n.jpg“由于未知错误,未上传。”
为什么每次都会出现错误,因为数据库中的此错误仅保存1行,并且当通过API中的Postman发送这样的数据时,没有保存另一行: -
address: Lucknow,
quantity: 1,1,
amount: 150,162,
payment_mode: CASH,
subcat_id: 8,12
public function saveOrder(Request $request)
{
$sid = explode(",", $request->subcat_id);
$quan = explode(",", $request->quantity);
$amnt = explode(",", $request->amount);
$c = count($sid);
for($i=0; $i < $c; $i++) {
$order = new Order();
$order->quantity = $quan[$i];
$order->amount = $amnt[$i];
$order->subcat_id = $sid[$i];
$order->address = $request->address;
$order->payment_mode = $request->payment_mode;
$order->order_no = $this->generateOrderNR();
if ($request->hasFile('image')) {
echo "in".$i;
$file = $request->file('image');
$file_name = time() . rand(1, 999) . '.' . $file->getClientOriginalExtension();
$file->move(base_path('images/orders/'), $file_name);
$order->image = $file_name;
}
if ($order->save()) {
echo "Order";
//return response()->json(['status' => 200, 'msg' => 'Order Placed Successfully']);
} else
echo "Error";
//return response()->json(['status' => 200, 'msg' => 'Error Occured']);
}
}
in0 Order in1{
"message": "The file "277762619_112136134785398_1736805384468006822_n.jpg" was not uploaded due to an unknown error."
Why this is error is coming up every time, because of this error in database only 1 row is saved and another row isn't saved when is send data like this in postman through api:-
address: Lucknow,
quantity: 1,1,
amount: 150,162,
payment_mode: CASH,
subcat_id: 8,12
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您想上传的第二个文件也许太大了。
请检查
php.ini
如果文件大小超过upload_max_filesize
。然后,增加大小,例如
1000m
或其他东西。然后重新启动Apache。
The second file you wanna upload is too big maybe.
Please check
php.ini
if the file size exceeds theupload_max_filesize
.Then, increase the size like
1000M
or something.Then restart apache.
您可以在插入或创建方法中传递阵列而不是循环。检查下面的代码示例:
Instead of loop you can pass an array in the insert or create method. Check below code sample :
而是使用此移动()
use this instead move()