'Button not working' is very vague. What errors are you experiencing?
Sep 14, 2023
39
Level 1
button not working
hi all iam trying to insert data to database but button is not working it is not inserting the data but it redirect to laravel welcome page .
this is blade
<div class="col-12">
<div class="card">
<div class="card-body">
<form action="{{ route('Countries.store') }}" method="post" autocomplete="off"
enctype="multipart/form-data">
{{ csrf_field() }}
<ul class="nav nav-tabs" role="tablist">
<li class="nav-item">
<a class="nav-link @if (LaravelLocalization::getCurrentLocale() == 'ar') active @endif" id="homeIcon-tab"
data-bs-toggle="tab" href="#homeIcon" aria-controls="home" role="tab"
aria-selected="true">
<i class="flag-icon flag-icon-ae"></i>
{{ trans('Dashboard/General.Arabic') }}
</a>
</li>
<li class="nav-item">
<a class="nav-link @if (LaravelLocalization::getCurrentLocale() == 'en') active @endif" id="profileIcon-tab"
data-bs-toggle="tab" href="#profileIcon" aria-controls="profile" role="tab"
aria-selected="false">
<i class="flag-icon flag-icon-us"></i>
{{ trans('Dashboard/General.English') }}
</a>
</li>
</ul>
<div class="tab-content">
<div class="tab-pane @if (LaravelLocalization::getCurrentLocale() == 'ar') active @endif" id="homeIcon"
aria-labelledby="homeIcon-tab" role="tabpanel">
<div class="col-12">
<div class="mb-1">
<label class="form-label"
for="basicInput">{{ trans('Dashboard/Countries.CountryName') }}</label>
<input type="text" class="form-control" id="basicInput"
placeholder="{{ trans('Dashboard/Countries.CountryName') }}" name="CountryNameAR">
</div>
</div>
</div>
<div class="tab-pane @if (LaravelLocalization::getCurrentLocale() == 'en') active @endif" id="profileIcon"
aria-labelledby="profileIcon-tab" role="tabpanel">
<div class="col-12">
<div class="mb-1">
<label class="form-label"
for="basicInput">{{ trans('Dashboard/Countries.CountryName') }}</label>
<input type="text" class="form-control" id="basicInput"
placeholder="{{ trans('Dashboard/Countries.CountryName') }}" name="CountryNameEN">
</div>
</div>
</div>
</div>
<div class="cardMaster rounded border p-2 mb-1">
<div class="d-flex justify-content-between flex-sm-row flex-column">
<div class="row col-12">
<div class="card-information col-6">
<div class="mb-1">
<label class="form-label"
for="first-name-column">{{ trans('Dashboard/Countries.CountryPhoneCode') }}</label>
<input type="text" id="first-name-column" class="form-control"
placeholder="{{ trans('Dashboard/Countries.CountryPhoneCode') }}"
name="fname-column">
</div>
</div>
<div class="d-flex flex-column col-6">
<div class="mb-1">
<label class="form-label"
for="last-name-column">{{ trans('Dashboard/Countries.CountryNumCode') }}</label>
<input type="text" id="last-name-column" class="form-control"
placeholder="{{ trans('Dashboard/Countries.CountryNumCode') }}"
name="lname-column">
</div>
</div>
</div>
</div>
</div>
<div class="cardMaster rounded border p-2 mb-1">
<div class="d-flex justify-content-between flex-sm-row flex-column">
<div class="row col-12">
<div class="mb-1">
<label class="form-label"
for="exampleFormControlTextarea1">{{ trans('Dashboard/General.Notes') }}</label>
<textarea class="form-control" id="exampleFormControlTextarea1" rows="3"
placeholder="{{ trans('Dashboard/General.Notes') }}"></textarea>
</div>
</div>
</div>
</div>
<div class="cardMaster rounded border p-2 mb-1">
<div class="d-flex justify-content-between flex-sm-row flex-column">
<div class="row col-12">
<div class="col-md-6 col-12">
<div class="mb-1">
<label class="form-label">
{{ trans('Dashboard/Countries.CountryFlag') }}
</label>
<!-- upload and reset button -->
<div class="d-flex flex-row">
<div>
<label id="courser" for="account-upload"
class="btn btn-sm btn-primary mb-75 me-75">{{ trans('Dashboard/General.Upload') }}
</label>
<input type="file" id="account-upload" name="account-upload" hidden
accept="image/*" />
<button onclick="changeImage()" type="button" id="account-reset"
class="btn btn-sm btn-outline-secondary mb-75 waves-effect">{{ trans('Dashboard/General.Reset') }}
</button>
</div>
</div>
<!--/ upload and reset button -->
</div>
</div>
<div class="col-md-6 col-12">
<div class="mb-1">
<a href="#" class="me-25">
<img src="{{ asset('Dashboard/images/NoImage.png') }}"
id="account-upload-img" class="uploadedAvatar rounded me-50"
alt="No Image" height="150" width="150" />
</a>
</div>
</div>
</div>
</div>
</div>
<div class="d-flex justify-content-between flex-sm-row flex-column">
<div class="d-flex flex-column text-start text-lg-end">
<div class="d-flex order-sm-0 order-1 mt-1 mt-sm-0">
<button type="submit" class="btn btn-primary me-1 waves-effect waves-float waves-light">
{{ trans('Dashboard/General.Save') }}
</button>
<a type="button" href="{{ route('Countries.index') }}"
class="btn btn-outline-secondary waves-effect">
{{ trans('Dashboard/General.Back') }}
</a>
</div>
</div>
</div>
</form>
</div>
</div>
</div>
<div class="card">
<div class="card-body">
<div class="col-12">
<div class="row">
<div class="col-md-6 col-12">
<div class="mb-1">
<label class="form-label"
for="first-name-column">{{ trans('Dashboard/Countries.CountryPhoneCode') }}</label>
<input type="text" id="first-name-column" class="form-control"
placeholder="{{ trans('Dashboard/Countries.CountryPhoneCode') }}" name="fname-column">
</div>
</div>
<div class="col-md-6 col-12">
<div class="mb-1">
<label class="form-label"
for="last-name-column">{{ trans('Dashboard/Countries.CountryNumCode') }}</label>
<input type="text" id="last-name-column" class="form-control"
placeholder="{{ trans('Dashboard/Countries.CountryNumCode') }}" name="lname-column">
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="card">
<div class="card-body">
<div class="col-12">
<div class="mb-1">
<label class="form-label"
for="exampleFormControlTextarea1">{{ trans('Dashboard/General.Notes') }}</label>
<textarea class="form-control" id="exampleFormControlTextarea1" rows="3"
placeholder="{{ trans('Dashboard/General.Notes') }}"></textarea>
</div>
</div>
</div>
</div>
<div class="card">
<div class="card-body">
<div class="col-12">
<div class="row">
<div class="col-md-6 col-12">
<div class="mb-1">
<label class="form-label">
{{ trans('Dashboard/Countries.CountryFlag') }}
</label>
<!-- upload and reset button -->
<div class="d-flex flex-row">
<div>
<label id="courser" for="account-upload"
class="btn btn-sm btn-primary mb-75 me-75">{{ trans('Dashboard/General.Upload') }}
</label>
<input type="file" id="account-upload" name="account-upload" hidden
accept="image/*" />
<button onclick="changeImage()" type="button" id="account-reset"
class="btn btn-sm btn-outline-secondary mb-75 waves-effect">{{ trans('Dashboard/General.Reset') }}
</button>
</div>
</div>
<!--/ upload and reset button -->
</div>
</div>
<div class="col-md-6 col-12">
<div class="mb-1">
<a href="#" class="me-25">
<img src="{{ asset('Dashboard/images/NoImage.png') }}" id="account-upload-img"
class="uploadedAvatar rounded me-50" alt="No Image" height="150" width="150" />
</a>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="card">
<div class="card-body">
<div class="col-12">
<button type="submit"
class="btn btn-primary me-1 waves-effect waves-float waves-light">{{ trans('Dashboard/General.Save') }}
</button>
<a type="button" href="{{ route('Countries.index') }}"
class="btn btn-outline-secondary waves-effect">{{ trans('Dashboard/General.Back') }}
</a>
</div>
</div>
</div>
this is the Repository
public function store($request)
{
DB::beginTransaction();
try {
$validated = $request->validated();
$countries = new Country();
$countries->CountryName = ['en' => $request->CountryNameEN, 'ar' => $request->CountryNameAR];
$countries->CountryPhoneCode = $request->CountryPhoneCode;
$countries->CountryNumCode = $request->CountryNumCode;
$countries->CountryNotes = $request->CountryNotes;
$countries->CreatedBy = Auth::guard('admin')->user()->id;
$countries->CreatedAt = CommonHelper::getDateTime();
$countries->CreatedDeviceName = $get_device = UserInfoHelper::get_device();
$countries->Createdip = $get_ip = UserInfoHelper::get_ip();
$countries->save();
// Insert Image
$this->verifyAndStoreImage($request, 'photo', $request->CountryNameEN, 'Countries', 'upload_image', $countries->CountryID, 'App\Models\Country');
DB::commit();
session()->flash('Add');
return redirect()->route('Countries.index');
} catch (Exception $e) {
DB::rollback();
return redirect()->back()->withErrors(['error' => $e->getMessage()]);
}
}
And interface
public function store($request);
And Controller
protected $Countries;
public function __construct(CountryRepositoryInterface $Countries)
{
$this->Countries = $Countries;
}
public function store(StoreCountry $request)
{
return $this->Countries->store($request);
}
For request
class StoreCountry extends FormRequest
{
public function authorize()
{
return true;
}
public function rules()
{
return [
'CountryNameAR' => 'required',
'CountryNameEN' => 'required',
'CountryPhoneCode' => 'required',
'CountryNumCode' => 'required',
'account-upload' => 'image|mimes:jpeg,png,jpg|max:1024',
];
}
public function messages()
{
return [
'CountryNameAR.required' => trans('Countries.CountryArabicName_error'),
'CountryNameEN.required' => trans('Countries.CountryEnglishName_error'),
'CountryPhoneCode.required' => trans('Countries.CountryPhoneCode_error'),
'CountryNumCode.required' => trans('Countries.CountryNumCode_error'),
'account-upload.image' => trans('Countries.Mustbeimage_error'),
'account-upload.mimes' => trans('Countries.Imagemimes_error'),
'account-upload.max' => trans('Countries.Imagemax_error'),
];
}
}
I tried to change the form location but the issue still
kind regards
Please or to participate in this conversation.