Employee Data Page = punch.blade.php ?
what about $employee is null ?
$employee = DB::select('SELECT * FROM `employees` WHERE (RIGHT(ssn,6)) = "'.$request->clock_id.'" limit 1');
Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.
I am working with a page that does not have a logged in user... The page is for a time clock punch... The employee types in their id and then submits... they are then taken to a page to view their current schedule and clock in for their shift.
I am getting an error when I try echoing the employees information that the variable is not set... I have tested the query and it is working as intended....
Controller
/**
* Display the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function punch(Request $request)
{
$employee = DB::select('SELECT * FROM `employees` WHERE (RIGHT(ssn,6)) = "'.$request->clock_id.'" limit 1');
return view('timeclock.punch', compact('employee'));
}
Form Page
@extends('layouts.auth')
@section('page-title', trans('app.login'))
@section('content')
<div class="col-md-8 col-lg-6 col-xl-5 mx-auto my-10p">
<div class="row-fluid">
<img src="{{ url('public/assets/img/peasi.png') }}" alt="{{ settings('app_name') }}" height="50">
</div>
<div class="row-fluid">
<form role="search" method="GET" action="{{ route('timeclock.punch') }}">
<div class="mb-form">
<input type="text" class="form-control" id="demo" name="clock_id"></input>
<label for="demo">Employee Clock In Id</label>
</div>
<button class="btn btn-outline-info btn-rounded btn-block my-4 waves-effect z-depth-0" type="submit">Clock In / Out</button>
</form>
</div>
</div>
@stop
@section('scripts')
<script type="text/javascript">
$(function () {
$('#demo').mobiscroll().numpad({
theme: 'windows',
template: 'dddddd',
allowLeadingZero: true,
placeholder: '-',
mask: '*',
validate: function (event, inst) {
return {
invalid: event.values.length != 6
};
}
});
});
</script>
@stop
Employee Data Page
@extends('layouts.auth')
@section('page-title', trans('app.login'))
@section('content')
{{$employee->first_name}}
@stop
@section('scripts')
@stop
stack trace
ErrorException thrown with message "Trying to get property 'first_name' of non-object (View: /home/emscomplete/public_html/resources/views/timeclock/punch.blade.php)"
Stacktrace:
#64 ErrorException in /home/emscomplete/public_html/storage/framework/views/9373c935447080823ef5ce4a7540907d65ee469c.php:6
#63 ErrorException in /home/emscomplete/public_html/storage/framework/views/9373c935447080823ef5ce4a7540907d65ee469c.php:6
#62 Illuminate\Foundation\Bootstrap\HandleExceptions:handleError in /home/emscomplete/public_html/storage/framework/views/9373c935447080823ef5ce4a7540907d65ee469c.php:6
#61 include in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php:43
#60 Illuminate\View\Engines\PhpEngine:evaluatePath in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php:59
#59 Illuminate\View\Engines\CompilerEngine:get in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/View/View.php:142
#58 Illuminate\View\View:getContents in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/View/View.php:125
#57 Illuminate\View\View:renderContents in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/View/View.php:90
#56 Illuminate\View\View:render in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Http/Response.php:42
#55 Illuminate\Http\Response:setContent in /home/emscomplete/public_html/vendor/symfony/http-foundation/Response.php:197
#54 Symfony\Component\HttpFoundation\Response:__construct in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Routing/Router.php:727
#53 Illuminate\Routing\Router:toResponse in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Routing/Router.php:699
#52 Illuminate\Routing\Router:prepareResponse in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Routing/Router.php:659
#51 Illuminate\Routing\Router:Illuminate\Routing\{closure} in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:30
#50 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php:41
#49 Illuminate\Routing\Middleware\SubstituteBindings:handle in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149
#48 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
#47 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php:67
#46 Illuminate\Foundation\Http\Middleware\VerifyCsrfToken:handle in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149
#45 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
#44 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php:49
#43 Illuminate\View\Middleware\ShareErrorsFromSession:handle in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149
#42 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
#41 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php:63
#40 Illuminate\Session\Middleware\StartSession:handle in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149
#39 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
#38 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php:37
#37 Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse:handle in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149
#36 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
#35 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php:59
#34 Illuminate\Cookie\Middleware\EncryptCookies:handle in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149
#33 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
#32 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:102
#31 Illuminate\Pipeline\Pipeline:then in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Routing/Router.php:661
#30 Illuminate\Routing\Router:runRouteWithinStack in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Routing/Router.php:636
#29 Illuminate\Routing\Router:runRoute in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Routing/Router.php:602
#28 Illuminate\Routing\Router:dispatchToRoute in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Routing/Router.php:591
#27 Illuminate\Routing\Router:dispatch in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:176
#26 Illuminate\Foundation\Http\Kernel:Illuminate\Foundation\Http\{closure} in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:30
#25 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /home/emscomplete/public_html/vendor/proengsoft/laravel-jsvalidation/src/RemoteValidationMiddleware.php:53
#24 Proengsoft\JsValidation\RemoteValidationMiddleware:handle in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149
#23 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
#22 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /home/emscomplete/public_html/vendor/barryvdh/laravel-debugbar/src/Middleware/InjectDebugbar.php:65
#21 Barryvdh\Debugbar\Middleware\InjectDebugbar:handle in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149
#20 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
#19 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /home/emscomplete/public_html/vendor/fideloper/proxy/src/TrustProxies.php:57
#18 Fideloper\Proxy\TrustProxies:handle in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149
#17 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
#16 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php:30
#15 Illuminate\Foundation\Http\Middleware\TransformsRequest:handle in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149
#14 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
#13 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php:30
#12 Illuminate\Foundation\Http\Middleware\TransformsRequest:handle in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149
#11 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
#10 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/CheckForMaintenanceMode.php:51
#9 Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode:handle in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149
#8 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
#7 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /home/emscomplete/public_html/app/Http/Middleware/VerifyInstallation.php:29
#6 Vanguard\Http\Middleware\VerifyInstallation:handle in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149
#5 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
#4 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:102
#3 Illuminate\Pipeline\Pipeline:then in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:151
#2 Illuminate\Foundation\Http\Kernel:sendRequestThroughRouter in /home/emscomplete/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:116
#1 Illuminate\Foundation\Http\Kernel:handle in /home/emscomplete/public_html/public/index.php:55
#0 require_once in /home/emscomplete/public_html/index.php:21
You are getting an array from the query, not an individual object. Why not use Eloquent if you need an object?
Employee::whereRaw("RIGHT(ssn,6) = {$request->clock_id}")->firstOrFail();
Please or to participate in this conversation.