Php 无法保存数据
我试图在数据库中保存任何发票卡,但未保存 我的代码出了什么问题,我试图搜索来解决这个问题,但没有解决 数据库总是空的 控制器 使用AdminLte模板中的Boostrap 3Php 无法保存数据,php,laravel,forms,invoice,Php,Laravel,Forms,Invoice,我试图在数据库中保存任何发票卡,但未保存 我的代码出了什么问题,我试图搜索来解决这个问题,但没有解决 数据库总是空的 控制器 使用AdminLte模板中的Boostrap 3 <?php namespace App\Http\Controllers; use App\Kwitansi; use Illuminate\Http\Request; use Haruncpi\LaravelIdGenerator\IdGenerator; class KwitansiController
<?php
namespace App\Http\Controllers;
use App\Kwitansi;
use Illuminate\Http\Request;
use Haruncpi\LaravelIdGenerator\IdGenerator;
class KwitansiController extends Controller
{
public function __construct()
{
$this->middleware('auth');
}
public function index()
{
$kwitansi = Kwitansi::get();
return view('user.formkwitansi', ['kwitansi' => $kwitansi]);
}
public function store(Request $request)
{
$kwitansi = new Kwitansi;
$id = IdGenerator::generate(['table' => 'kwitansis', 'length' => 10, 'prefix' =>'PM-INV-']);
$kwitansi->received = $request->received;
$kwitansi->registration = $request->registration;
$kwitansi->course = $request->course;
$kwitansi->trasnportation = $request->trasnportation;
$kwitansi->payment = $request->payment;
$kwitansi->kota = $request->kota;
$kwitansi->register_at = $request->register_at;
$request->validate([
'sum_rp' => 'required',
'sum_text' => 'required',
]);
$sum_rp = $request->registration + $request->course + $request->transportation;
function penyebut($nilai) {
$nilai = abs($nilai);
$huruf = array("", "satu", "dua", "tiga", "empat", "lima", "enam", "tujuh", "delapan", "sembilan", "sepuluh", "sebelas");
$temp = "";
if ($nilai < 12) {
$temp = " ". $huruf[$nilai];
} else if ($nilai <20) {
$temp = penyebut($nilai - 10). " belas";
} else if ($nilai < 100) {
$temp = penyebut($nilai/10)." puluh". penyebut($nilai % 10);
} else if ($nilai < 200) {
$temp = " seratus" . penyebut($nilai - 100);
} else if ($nilai < 1000) {
$temp = penyebut($nilai/100) . " ratus" . penyebut($nilai % 100);
} else if ($nilai < 2000) {
$temp = " seribu" . penyebut($nilai - 1000);
} else if ($nilai < 1000000) {
$temp = penyebut($nilai/1000) . " ribu" . penyebut($nilai % 1000);
} else if ($nilai < 1000000000) {
$temp = penyebut($nilai/1000000) . " juta" . penyebut($nilai % 1000000);
} else if ($nilai < 1000000000000) {
$temp = penyebut($nilai/1000000000) . " milyar" . penyebut(fmod($nilai,1000000000));
} else if ($nilai < 1000000000000000) {
$temp = penyebut($nilai/1000000000000) . " trilyun" . penyebut(fmod($nilai,1000000000000));
}
return $temp;
}
function terbilang($nilai) {
if($nilai<0) {
$hasil = "minus ". trim(penyebut($nilai));
} else {
$hasil = trim(penyebut($nilai));
}
return $hasil;
}
$sum_text = $request->sum_rp;
$kwitansi->sum_rp = $sum_rp;
$kwitansi->sum_text = terbilang($sum_text);
$kwitansi->save();
return redirect('kwitansi')->withSuccess('Added Succesfully');
}
}
从模型中删除以下行:
protected $primarykey = 'id';
public $increment = false;
protected $keyType = 'string';
好的,谢谢大家的帮助,我已经解决了这个问题
我只删除了控制器上的一些功能,并且对我有用
$request->validate([
'sum_rp' => 'required',
'sum_text' => 'required',
]);
$sum_rp = $request->registration + $request->course + $request->transportation;
function penyebut($nilai) {
$nilai = abs($nilai);
$huruf = array("", "satu", "dua", "tiga", "empat", "lima", "enam", "tujuh", "delapan", "sembilan", "sepuluh", "sebelas");
$temp = "";
if ($nilai < 12) {
$temp = " ". $huruf[$nilai];
} else if ($nilai <20) {
$temp = penyebut($nilai - 10). " belas";
} else if ($nilai < 100) {
$temp = penyebut($nilai/10)." puluh". penyebut($nilai % 10);
} else if ($nilai < 200) {
$temp = " seratus" . penyebut($nilai - 100);
} else if ($nilai < 1000) {
$temp = penyebut($nilai/100) . " ratus" . penyebut($nilai % 100);
} else if ($nilai < 2000) {
$temp = " seribu" . penyebut($nilai - 1000);
} else if ($nilai < 1000000) {
$temp = penyebut($nilai/1000) . " ribu" . penyebut($nilai % 1000);
} else if ($nilai < 1000000000) {
$temp = penyebut($nilai/1000000) . " juta" . penyebut($nilai % 1000000);
} else if ($nilai < 1000000000000) {
$temp = penyebut($nilai/1000000000) . " milyar" . penyebut(fmod($nilai,1000000000));
} else if ($nilai < 1000000000000000) {
$temp = penyebut($nilai/1000000000000) . " trilyun" . penyebut(fmod($nilai,1000000000000));
}
return $temp;
}
function terbilang($nilai) {
if($nilai<0) {
$hasil = "minus ". trim(penyebut($nilai));
} else {
$hasil = trim(penyebut($nilai));
}
return $hasil;
}
$sum_text = $request->sum_rp;
$kwitansi->sum_rp = $sum_rp;
$kwitansi->sum_text = terbilang($sum_text);
$request->validate([
'sum_rp'=>'required',
'sum_text'=>'required',
]);
$sum_rp=$request->registration+$request->course+$request->transportation;
函数penyebut($nilai){
$nilai=abs($nilai);
$huruf=数组(“,”satu“,”dua“,”tiga“,”empat“,”lima“,”enam“,”tujuh“,”delapan“,”sembilan“,”sepuluh“,”sebelas“);
$temp=“”;
如果($nilai<12){
$temp=”“.$huruf[$nilai];
}否则,如果($nilai sum\u rp=$sum\u rp;
$kwitansi->sum_text=terbilang($sum_text);
仅删除此函数并将其添加到Helper类中请显示您的Kwitansi模型。首先,您有许多不必要的代码,例如您可以执行此操作:$kwitansiData=$request->Only(['received','registration',…]);Kwitansi::create($kwitansiData);您可以在保存之前转储Kwitansi数据,而不是逐个填充数据()方法以查看您创建的kwitansi对象中是否有任何数据,或者我将尝试使用notOk@HassanShojaei@QumberRizvi这是My Model如果此行删除了ID为0且无法再添加任何数据,则可以从数据库本身修改自动增量值。对于MySQL:ALTER TABLE tbl auto_increment=5;
如果这不适用于you,我想看看您的tablekwitansis
的表格结构。
$request->validate([
'sum_rp' => 'required',
'sum_text' => 'required',
]);
$sum_rp = $request->registration + $request->course + $request->transportation;
function penyebut($nilai) {
$nilai = abs($nilai);
$huruf = array("", "satu", "dua", "tiga", "empat", "lima", "enam", "tujuh", "delapan", "sembilan", "sepuluh", "sebelas");
$temp = "";
if ($nilai < 12) {
$temp = " ". $huruf[$nilai];
} else if ($nilai <20) {
$temp = penyebut($nilai - 10). " belas";
} else if ($nilai < 100) {
$temp = penyebut($nilai/10)." puluh". penyebut($nilai % 10);
} else if ($nilai < 200) {
$temp = " seratus" . penyebut($nilai - 100);
} else if ($nilai < 1000) {
$temp = penyebut($nilai/100) . " ratus" . penyebut($nilai % 100);
} else if ($nilai < 2000) {
$temp = " seribu" . penyebut($nilai - 1000);
} else if ($nilai < 1000000) {
$temp = penyebut($nilai/1000) . " ribu" . penyebut($nilai % 1000);
} else if ($nilai < 1000000000) {
$temp = penyebut($nilai/1000000) . " juta" . penyebut($nilai % 1000000);
} else if ($nilai < 1000000000000) {
$temp = penyebut($nilai/1000000000) . " milyar" . penyebut(fmod($nilai,1000000000));
} else if ($nilai < 1000000000000000) {
$temp = penyebut($nilai/1000000000000) . " trilyun" . penyebut(fmod($nilai,1000000000000));
}
return $temp;
}
function terbilang($nilai) {
if($nilai<0) {
$hasil = "minus ". trim(penyebut($nilai));
} else {
$hasil = trim(penyebut($nilai));
}
return $hasil;
}
$sum_text = $request->sum_rp;
$kwitansi->sum_rp = $sum_rp;
$kwitansi->sum_text = terbilang($sum_text);