I am creating a static form of 4 rows (8 inputs) it's for recurring services as package pricing using Laravel 5.5 version. Each row includes 2 fields the first is the package name and the second field is the package price based on 1 month, 3 months, 6 months and 1 Year. The view is showing the fields but not saving the inputs into database.
The Package Controller
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\models\Package;
use App\models\Package as AppPackage;
use App\models\Subscription;
use App\User;
use App\Invoice;
use App\Item;
use Auth;
use Lang;
use Carbon\Carbon;
use Illuminate\Support\Facades\Storage;
use Illuminate\Support\Facades\Input;
class PackagesController extends Controller
{
public function __construct()
{
$this->middleware('auth');
}
public function index()
{
$packages = AppPackage::orderBy('item_number', 'ASC')->get();
$packages->item_number = '';
$packages->item_name = '';
$packages->amount = '';
session()->put('info', Lang::get('messages.packages_info_warning'));
return view('packages.index')->with('packages', $packages);
}
public function edit_packages(Request $request){
$package = new AppPackage;
$package->item_name = '';
$package->amount = '';
$package->save();
return back();
}
public function save_packages(Request $request)
{
$this->validate($request, [
'item_name' => 'required',
'amount'=> 'required'
]);
$packages = new UstaziPackage;
$id = $packages->orderBy('id', 'DESC')->pluck('id')->first();
$item_number = $id + 1;
//$package_numbers = UstaziPackage::where('item_number', '=', $item_number);
foreach ($packages as $package) {
$package_number = UstaziPackage::where('item_number', '=', $item_number);
$package_name = UstaziPackage::where('item_name', '=', Input::get('item_name'))->get();
$package_amount = UstaziPackage::where('amount', '=', Input::get('amount'))->get();
}
$packages->save();
return back();
}
}
The Package Model
namespace App\models;
use Illuminate\Database\Eloquent\Model;
class Package extends Model
{
protected $table = 'package';
protected $fillable = [
'id', 'item_number', 'item_name', 'amount'
];
public function teacher(){
return $this->belongsTo('App\models\Teacher');
}
public function subscription(){
return $this->belongsTo('App\models\Subscription');
}
public function get_packages(){
return $packages = Packages::whereHas('package', function($query){
$query->where('item_number', '=', $this->id);
})->get();
}
}
The View of Packages
@extends('layouts.app')
@section('header')
<h1>@lang('messages.packagessettings')</h1>
<hr />
<div style="clear:both"> </div>
@endsection
@section('content')
<form action="" method="POST">
<div class="table-responsive">
<table class="table">
<thead>
<tr>
<th scope="col" class="text-center">#</th>
<th scope="col" class="text-center">@lang('messages.packageduration')</th>
<th scope="col" class="text-center">@lang('messages.packagename')</th>
<th scope="col" class="text-center">@lang('messages.packageamoutn')</th>
</tr>
</thead>
<tbody>
<tr>
<th scope="row">1</th>
<th scope="col">@lang('messages.1mpackage')</th>
<td><input type="text" class="form-control" id="item_name" name="item_name" value=""></td>
<td><input type="text" class="form-control" id="amount" name="amount" value=""></td>
</tr>
<tr>
<th scope="row">2</th>
<th scope="col">@lang('messages.3mpackage')</th>
<td><input type="text" class="form-control" id="item_name" name="item_name" value=""></td>
<td><input type="text" class="form-control" id="amount" name="amount" value=""></td>
</tr>
<tr>
<th scope="row">3</th>
<th scope="col">@lang('messages.6mpackage')</th>
<td><input type="text" class="form-control" id="item_name" name="item_name" value=""></td>
<td><input type="text" class="form-control" id="amount" name="amount" value=""></td>
</tr>
<tr>
<th scope="row">4</th>
<th scope="col">@lang('messages.1ypackage')</th>
<td><input type="text" class="form-control" id="item_name" name="item_name" value=""></td>
<td><input type="text" class="form-control" id="amount" name="amount" value=""></td>
</tr>
</tbody>
</table>
</div>
<div style="clear:both"> </div>
<div class="form-group float-right">
<button type="submit" class="btn btn-primary">@lang('messages.save')</button>
</div>
</form>
@endsection
And this is how I'm calling them in the frontend for use pick
@foreach($packages as $package)
<select id="packages">
<option value=" - "> - </option>
<input type="hidden" name="item_name" value="" />
<input type="hidden" name="item_number" value="">
<!-- Set the revised subscription price and terms. -->
<input type="hidden" name="currency_code" value="USD">
<input type="hidden" name="a3" value="">
<input type="hidden" name="p3" value="6">
<input type="hidden" name="t3" value="M">
</select>
@endforeach
from Newest questions tagged laravel-5 - Stack Overflow https://ift.tt/2G2GUHL
via IFTTT
Aucun commentaire:
Enregistrer un commentaire