php - 提交表单数据后,页面未在 laravel 中正确加载
问题描述
我有一个网站,其中有一个表单,用户提交后的表单数据被发送到我的数据库和电子邮件。
下面是我的控制器和路线
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Register;
use App\Mail\SendEmail;
use Session;
use Mail;
use Storage;
use Illuminate\Support\Facades\File;
class RegController extends Controller
{
public function index()
{
//
}
public function create()
{
//
}
public function store(Request $request)
{
// return $request;
// return $request->Fee;
$data = new Register;
$data->firstname = $request->firstname;
$data->lastname = $request->lastname;
$data->mobilenumber = $request->mobilenumber;
$data->experience = $request->experience;
$data->designation = $request->designation;
$data->confirmation = $request->confirmation;
$data->company = $request->company;
$data->address = $request->address;
$data->addressline2 = $request->addressline2;
$data->city = $request->city;
$data->state = $request->state;
$data->pin = $request->pin;
$data->country = $request->country;
$data->Whatsapp = $request->Whatsapp;
$data->alternatenumber = $request->alternatenumber;
$data->Email = $request->Email;
$data->CompanyRegNumber = $request->CompanyRegNumber;
$data->Date_Incorporation_orBusi_Stp = $request->Date_Incorporation_orBusi_Stp;
$data->GSTIN = $request->GSTIN;
$data->Services_Offered = $request->Services_Offered;
$data->Annual_Turnover = $request->Annual_Turnover;
$data->Declaration = $request->Declaration;
$data->termsandconditions = $request->termsandconditions;
// $data->Fee = $request->Fee;
$data->Mode_of_Payment = $request->Mode_of_Payment;
$data->Recommended_by_A = $request->Recommended_by_A;
$data->Recommended_by_B = $request->Recommended_by_B;
$fee = $request->Fee[0];
$data->Fee = $fee;
if(!empty($request->Fee[1]))
{
$data->Fee1 = $request->Fee[1];
}
if(!empty($request->Fee[2]))
{
$data->Fee2 = $request->Fee[2];
}
if(!empty($request->Fee[3]))
{
$data->Fee3 = $request->Fee[3];
}
if($request->hasFile('Photo')) {
$image = $request->file('Photo');
$filename = time().$image->getClientOriginalName();
$destinationPath = public_path('uploads/Photo');
Storage::disk('public')->put($filename, File::get($image));
$data->Photo=$filename;
}
if($request->hasFile('Receipt')) {
$image = $request->file('Receipt');
$filename = time().$image->getClientOriginalName();
$destinationPath = public_path('uploads/Receipt');
Storage::disk('public')->put($filename, File::get($image));
$data->Receipt=$filename;
}
if($request->hasFile('Signature')) {
$image = $request->file('Signature');
$filename = time().$image->getClientOriginalName();
$destinationPath = public_path('uploads/Signature');
Storage::disk('public')->put($filename, File::get($image));
$data->Signature=$filename;
}
$data->save();
Session::flash('registered','reg');
$name = $request->firstname." ".$request->lastname;
$subject = "TEIA";
$message = $data->id;
$photo = $data->Photo;
$sign = $data->Signature;
$recipt= $data->Receipt;
$email = 'zubairking@gmail.com';
// ->cc(['name1@domain.com','name2@domain.com'])
Mail::to($email)->send( new SendEmail($subject,$message , $photo ,$sign,$recipt));
return back();
}
public function show($id)
{
//
}
public function edit($id)
{
//
}
public function update(Request $request, $id)
{
//
}
public function destroy($id)
{
//
}
}
Route::get('/', function () {
// Session::flush();
return view('welcome');
});
Route::resource('register','RegController');
用户提交注册按钮后,数据被提交,然后用户被带到顶部带有成功消息的表单。问题是用户第一次提交数据时,页面卡在https://booktheparty.in/TEIA/register并出现空白页。然后当用户返回并再次提交时,页面被定向到表单页面并显示成功消息。但仍然将数据添加到数据库中 2 次。我想知道为什么我的页面第一次就卡住了。谁能告诉我
解决方案
请将此代码替换为您的商店功能
public function store(Request $request)
{
// return $request;
// return $request->Fee;
$data = new Register;
$data->firstname = $request->firstname;
$data->lastname = $request->lastname;
$data->mobilenumber = $request->mobilenumber;
$data->experience = $request->experience;
$data->designation = $request->designation;
$data->confirmation = $request->confirmation;
$data->company = $request->company;
$data->address = $request->address;
$data->addressline2 = $request->addressline2;
$data->city = $request->city;
$data->state = $request->state;
$data->pin = $request->pin;
$data->country = $request->country;
$data->Whatsapp = $request->Whatsapp;
$data->alternatenumber = $request->alternatenumber;
$data->Email = $request->Email;
$data->CompanyRegNumber = $request->CompanyRegNumber;
$data->Date_Incorporation_orBusi_Stp = $request->Date_Incorporation_orBusi_Stp;
$data->GSTIN = $request->GSTIN;
$data->Services_Offered = $request->Services_Offered;
$data->Annual_Turnover = $request->Annual_Turnover;
$data->Declaration = $request->Declaration;
$data->termsandconditions = $request->termsandconditions;
// $data->Fee = $request->Fee;
$data->Mode_of_Payment = $request->Mode_of_Payment;
$data->Recommended_by_A = $request->Recommended_by_A;
$data->Recommended_by_B = $request->Recommended_by_B;
$fee = $request->Fee[0];
$data->Fee = $fee;
if(!empty($request->Fee[1]))
{
$data->Fee1 = $request->Fee[1];
}
if(!empty($request->Fee[2]))
{
$data->Fee2 = $request->Fee[2];
}
if(!empty($request->Fee[3]))
{
$data->Fee3 = $request->Fee[3];
}
if($request->hasFile('Photo')) {
$image = $request->file('Photo');
$filename = time().$image->getClientOriginalName();
$destinationPath = public_path('uploads/Photo');
Storage::disk('public')->put($filename, File::get($image));
$data->Photo=$filename;
}
if($request->hasFile('Receipt')) {
$image = $request->file('Receipt');
$filename = time().$image->getClientOriginalName();
$destinationPath = public_path('uploads/Receipt');
Storage::disk('public')->put($filename, File::get($image));
$data->Receipt=$filename;
}
if($request->hasFile('Signature')) {
$image = $request->file('Signature');
$filename = time().$image->getClientOriginalName();
$destinationPath = public_path('uploads/Signature');
Storage::disk('public')->put($filename, File::get($image));
$data->Signature=$filename;
}
$data->save();
Session::flash('registered','reg');
$name = $request->firstname." ".$request->lastname;
$subject = "TEIA";
$message = $data->id;
$photo = $data->Photo;
$sign = $data->Signature;
$recipt= $data->Receipt;
$email = 'zubairking@gmail.com';
// ->cc(['name1@domain.com','name2@domain.com'])
Mail::to($email)->send( new SendEmail($subject,$message , $photo ,$sign,$recipt));
return redirect()->back();
}
希望它对你有用
推荐阅读
- javascript - 在带有 webpacker 的 rails 中使用的 Javascript 不提供任何 console.log 输出
- vba - vba Word如何获取表格中的句子
- android-studio - 在颤振中使用 setState() 的替代方法是什么?
- laravel - 在 laravel 中使用 memcached。这是正常的应用程序行为吗?
- node.js - 如何打印节点js请求响应的HTML响应
- javascript - Classic ASP 中 ipv6 地址的字符串表示
- json - 使用 ASP.NET Core 5 MVC 将 Json 结果转换为 HTML 表单
- build - WebpackError: ReferenceError: Image is not defined(在“gatsby build”期间,“gatsby develop”工作正常)
- laravel - 如何在 laravel 8 中设置一个漂亮的 url?
- reactjs - React 测试使用 mockstore 和自定义存储来测试它