I developed the web application for interviews within 3 hours time limitation. Here is the application link in git https://github.com/udithaharshana/php_uditha , But they reviewed my application and they commented as
its basic code, is not recommended
here is my controller, some function
/* Saller Home Page */
public function HomePage()
{
return view('pages/saller_home');
}
/* Saller New Page */
public function New()
{
$data['routes'] = Route::Where('status', '1')->get();
return view('pages/saller_edit')->with($data);
}
/* Saller Edit Page */
public function Edit(Request $request)
{
try {
$data['saller'] = Saller::find($request->sid);
$data['routes'] = Route::Where('status', '1')->get();
return view('pages/saller_edit')->with($data);
} catch (Exception $e) {
return redirect()->back()->withErrors(App::environment('local') ? $e->getMessage() : '');
}
}
/* Validation funtion */
//saleer name validation
public function name_validate(Request $request)
{
$data = Saller::where('name', $request->name)->where('sid', '!=', $request->sid)->exists();
return response()->json($data);
}
/* Saller save funtion
using both new/edit pages
*/
public function save(Request $request)
{
try {
/* backend validation */
$rules = [
'name' => ['required', Rule::unique('saller', 'name')->ignore($request->sid, 'sid')],
'telephone' => 'required',
'join_date' => 'required',
'rid' => 'required',
'email' => ['nullable', 'email', Rule::unique('saller', 'email')->ignore($request->sid, 'sid')]
];
$customMessages = [
'name.required' => 'Saller Name is required',
'name.unique'=> 'Already Existing Saller Name',
'telephone.required' => 'Saller telephone is required',
'join_date.required' => 'Join Date is required',
'email.email' => 'Invalid email address',
'email.unique' => 'Already Existing Saller email address',
];
/* if validation fails redirect back with errors */
$validatedData = Validator::make($request->all(), $rules, $customMessages);
if ($validatedData->fails()) {
return redirect()->back()->withErrors($validatedData)->withInput();
} else {
/* create or update saller */
$saller = $request->sid ? Saller::find($request->sid) : new Saller();
$saller->name = $request->name;
$saller->email = $request->email;
$saller->telephone = $request->telephone;
$saller->route_id = $request->rid;
$saller->join_date = date('Y-m-d', strtotime(str_replace('/', '-', $request->join_date)));
$saller->comment = $request->remark;
$saller->save();
return redirect('/sales_team');
}
} catch (Exception $e) {
return redirect()->back()->withErrors(App::environment('local') ? $e->getMessage() : '');
}
}
I use the model, eloquent, blade and other Laravel common things. So I need to know how to implement this code using professional and standard coding methods. And what i use bad methods in my project.