shell bypass 403
<?php namespace App\Livewire\Prime; use Livewire\Component; use Livewire\Attributes\Title; use App\Models\contrat\autocontrat; use App\Models\{Garanties,Produit, Compagnie, Energie,DureeContrat, Avenant, Paiement,Devise, Souscripteur, Assure, Vehicule,Pay, PlaceVehicule, Ville,TypeVehicule, PrimeAuto,Puissance, }; use Carbon\Carbon; use Illuminate\Support\Facades\DB; use Livewire\Attributes\Rule; use Livewire\Attributes\Validate; use Illuminate\Support\Facades\Auth; class Createprime extends Component { #[Validate('required|numeric')] public $primeNette= ''; // #[Validate('nullable|exists:villes,id')] // public $IDville= ''; #[Validate('required|exists:compagnies,id')] public $IDcompagnie= ''; #[Validate('required|exists:produits,id')] public $IDproduit= ''; #[Validate('nullable|exists:energies,id')] public $IDenergie= ''; #[Validate('nullable|exists:puissances,id')] public $puissances= ''; public $puissanceVehicule =[]; #[Validate('required|exists:garanties,id')] public $IDgarantie= ''; #[Validate('nullable|exists:place_vehicules,id')] public $NombrePlaces= ''; #[Validate('required|exists:duree_contrats,id')] public $IDdureecontrat= ''; #[Validate('required|exists:type_vehicules,id')] public $IDtypevehicule= ''; public function mount() { if (!Auth::check()) { return redirect()->route('post.login'); } } public function GetPuissance(){ switch ($this->IDproduit) { case '9'://produit tourisme $this->puissanceVehicule = Puissance::Where('IDproduit',$this->IDproduit) ->where('IDenergie', $this->IDenergie)->get(); break; case '2'://produit TPPC $this->puissanceVehicule = Puissance::Where('IDproduit',$this->IDproduit)->get(); break; case '3'://produit TPM $this->puissanceVehicule = Puissance::Where('IDproduit',$this->IDproduit)->get(); break; case '4'://produit deux roues ou trois roues $this->puissanceVehicule = Puissance::Where('IDproduit',$this->IDproduit)->get(); break; default: # code... break; } } public function save(){ $this->validate(); $listesPrimes = DB::table('prime_autos') ->join('garanties', 'prime_autos.IDgarantie', '=', 'garanties.id') ->join('produits', 'prime_autos.IDproduit', '=', 'produits.id') // ->join('villes', 'prime_autos.IDville', '=', 'villes.id') ->join('duree_contrats', 'prime_autos.IDdureecontrat', '=', 'duree_contrats.id') ->join('energies', 'prime_autos.IDenergie', '=', 'energies.id') ->join('type_vehicules', 'prime_autos.IDtypevehicule', '=', 'type_vehicules.id') ->join('compagnies', 'prime_autos.IDcompagnie', '=', 'compagnies.id') ->where('prime_autos.IDgarantie', $this->IDgarantie) ->where('prime_autos.IDproduit', $this->IDproduit) ->where('prime_autos.IDdureecontrat', $this->IDdureecontrat) ->where('prime_autos.IDtypevehicule', $this->IDtypevehicule) ->where('prime_autos.IDcompagnie', $this->IDcompagnie) ->Where('prime_autos.IDpuissance', $this->puissances) ->where('prime_autos.primeNette', $this->primeNette) ->Where('prime_autos.IDenergie', $this->IDenergie) // ->orWhere('prime_autos.IDville', $this->IDville) ->orWhere('prime_autos.IDplaceAuto', $this->NombrePlaces) // ->select('primes.id_duree', 'primes.id_ville', 'primes.id_categorie', 'primes.id_puissance', 'primes.id_garantie') ->count(); if ($listesPrimes > 0) { session()->flash('erreur', 'Erreur. La prime a déjà été ajoutée'); } else { if ($this->puissances && $this->NombrePlaces) { PrimeAuto::create([ 'IDgarantie'=>$this->IDgarantie, 'IDproduit'=>$this->IDproduit, 'IDdureecontrat'=>$this->IDdureecontrat, 'IDtypevehicule'=>$this->IDtypevehicule, 'IDcompagnie'=>$this->IDcompagnie, 'IDenergie'=>$this->IDenergie, 'IDplaceAuto'=>$this->NombrePlaces, 'IDpuissance'=>$this->puissances, 'primeNette'=> (int)$this->primeNette, ]); session()->flash('success', 'La prime a été ajoutée avec succès'); }elseif($this->puissances && $this->NombrePlaces ==''){ PrimeAuto::create([ 'IDgarantie'=>$this->IDgarantie, 'IDproduit'=>$this->IDproduit, 'IDdureecontrat'=>$this->IDdureecontrat, 'IDtypevehicule'=>$this->IDtypevehicule, 'IDcompagnie'=>$this->IDcompagnie, 'IDpuissance'=>$this->puissances, 'IDenergie'=>$this->IDenergie, 'primeNette'=> (int)$this->primeNette, ]); session()->flash('success', 'La prime a été ajoutée avec succès'); }elseif($this->puissances =='' && $this->NombrePlaces) { PrimeAuto::create([ 'IDgarantie'=>$this->IDgarantie, 'IDproduit'=>$this->IDproduit, 'IDdureecontrat'=>$this->IDdureecontrat, 'IDtypevehicule'=>$this->IDtypevehicule, 'IDcompagnie'=>$this->IDcompagnie, 'IDenergie'=>$this->IDenergie, 'IDplaceAuto'=>$this->NombrePlaces, 'primeNette'=> (int)$this->primeNette, ]); session()->flash('success', 'La prime a été ajoutée avec succès'); } } } #[Title('Ajouter une prime')] public function render() { return view('livewire.prime.createprime',[ 'pays'=>Pay::orderBy('pays','asc')->get(), 'compagnies'=>Compagnie::orderBy('Nom_compagnie','asc')->get(), 'villes'=>Ville::orderBy('ville','asc')->get(), 'garanties'=>Garanties::orderBy('id','desc')->get(), 'energies'=>Energie::orderBy('id','desc')->get(), 'produits'=>Produit::orderBy('id','desc')->get(), 'durees'=>DureeContrat::orderBy('id','desc')->get(), 'typeVehicules'=>TypeVehicule::orderBy('id','desc')->get(), 'placesVehicules'=>PlaceVehicule::orderBy('id','asc')->get(), ]); } }