0

so i have this problem that i can't get pass it, i'm trying to get an parameter i sent with this view

@if(Auth::user())
 <a href="/apply/success/{{$data->VacanciesID}}" class="btn turquoiseButton">Apply</a>
 @else
 <a href="/careers/{{$data->VacanciesID}}/apply" class="btn turquoiseButton">Apply</a>
 @endif

when the user isn't login it redirect him to the register form and it send the 'VacanciesID' to the register form, so its there in the url but i can't get the parameter of the url to the blade to send it with the action of the form that looks like this /careers/1/apply i need '1'.

heres my register form

<form action="/register/" method="POST" class="careersform">
 <input type="hidden" name="_token" id="csrf-token" value="{{ Session::token() }}" />
 <h4>User Details</h4>
 <hr>
 <div class="row">
 <div class="col-md-6 col-xs-12">
 <div class="form-group careersform-group-styled required">
 <label>Username</label>
 <input name="EmployeeUsername" type="text" class="form-control">
 </div>
 </div>
 <div class="col-md-6 col-xs-12">
 <div class="form-group careersform-group-styled required">
 <label>Password</label>
 <input name="EmployeePassword" type="text" class="form-control">
 </div>
 </div>
 </div>
 <h4>Personal Details</h4>
 <hr>
 <div class="row">
 <div class="col-md-6 col-xs-12">
 <div class="form-group careersform-group-styled required">
 <label>First Name</label>
 <input name="FName" type="text" class="form-control">
 </div>
 </div>
 <div class="col-md-6 col-xs-12">
 <div class="form-group careersform-group-styled required">
 <label>Last Name</label>
 <input name="LName" type="text" class="form-control">
 </div>
 </div>
 <div class="col-md-6 col-xs-12">
 <div class="form-group careersform-group-styled required">
 <label>Gender</label>
 <select name="Gender" class="form-control">
 <option>Male</option>
 <option>Female</option>
 </select>
 </div>
 </div>
 <div class="col-md-6 col-xs-12">
 <div class="form-group careersform-group-styled required">
 <label>Date of Birth</label>
 <input name="DOB" type="date" class="form-control">
 </div>
 </div>
 <div class="col-md-6 col-xs-12">
 <div class="form-group careersform-group-styled required">
 <label>Marital Status</label>
 <select name="MaritalStatus" class="form-control">
 <option>Single</option>
 <option>Married</option>
 <option>Other</option>
 </select>
 </div>
 </div>
 <div class="col-md-6 col-xs-12">
 <div class="form-group careersform-group-styled required">
 <label>Country of Nationality</label>
 <select name="CountryOfNationality" class="form-control">
 <option>Jordan</option>
 <option>Other..</option>
 </select>
 </div>
 </div>
 <div class="col-md-6 col-xs-12">
 <div class="form-group careersform-group-styled required">
 <label>National ID</label>
 <input name="NationID" type="text" class="form-control">
 </div>
 </div>
 <div class="col-md-6 col-xs-12">
 <div class="form-group careersform-group-styled required">
 <label>Image</label>
 <input name="Image" type="file" class="form-control">
 </div>
 </div>
 <div class="form-group col-md-6 col-xs-12">
 <img id="ImgUpload" src="/images/avatar.png" alt="Uploaded Image"/>
 </div>
 </div>
 <h4>Education Details</h4>
 <hr>
 <div class="row">
 <div class="col-md-6 col-xs-12">
 <div class="form-group careersform-group-styled required">
 <label>School's Name</label>
 <input name="SchoolName" type="text" class="form-control">
 </div>
 </div>
 <div class="col-md-6 col-xs-12">
 <div class="form-group careersform-group-styled required">
 <label>Education Level</label>
 <select name='EducationLevel' class="form-control">
 <option>High school</option>
 <option>Some college</option>
 <option>Bachelor's degree</option>
 <option>Master's degree</option>
 </select>
 </div>
 </div>
 <div class="col-md-6 col-xs-12">
 <div class="form-group careersform-group-styled required">
 <label>Major</label>
 <input name="EducationMajor" type="text" class="form-control">
 </div>
 </div>
 <div class="col-md-6 col-xs-12">
 <div class="form-group careersform-group-styled required">
 <label>GPA</label>
 <input name="GBA" type="text" class="form-control">
 </div>
 </div>
 <div class="col-md-6 col-xs-12">
 <div class="form-group careersform-group-styled required">
 <label>Add Another Education</label>
 <input name="education" type="text" class="form-control">
 </div>
 </div>
 </div>
 <h4>Experience Details</h4>
 <hr>
 <div class="row">
 <div class="col-xs-12">
 <div class="form-group careersform-group-styled required">
 <label>Company's Name</label>
 <input name="CompanyName" type="text" class="form-control">
 </div>
 </div>
 <div class="col-md-6 col-xs-12">
 <div class="form-group careersform-group-styled required">
 <label>Job Title</label>
 <input name="JobTitle" type="text" class="form-control">
 </div>
 </div>
 <div class="col-md-6 col-xs-12">
 <div class="form-group careersform-group-styled required">
 <label>Salary</label>
 <input name="Salary" type="text" class="form-control">
 </div>
 </div>
 <div class="col-md-6 col-xs-12">
 <div class="form-group careersform-group-styled required">
 <label>Start date</label>
 <input name="StartDate" type="text" class="form-control">
 </div>
 </div>
 <div class="col-md-6 col-xs-12">
 <div class="form-group careersform-group-styled required">
 <label>End date</label>
 <input name="EndDate" type="text" class="form-control">
 </div>
 </div>
 <div class="col-md-6 col-xs-12">
 <div class="form-group careersform-group-styled required">
 <label>Add Another Experience</label>
 <input name="anotherexperience" type="text" class="form-control">
 </div>
 </div>
 </div>
 <button type="submit" class="btn turquoiseButton">Submit</button>
 </form>

register route:

Route::post('register/', 'UsersController@careerportalregister');

controller:

public function careerportalregister(request $request){
 $EmployeeUsername = $request->input('username');
 $EmployeePassword = $request->input('password');
 $role_id = $request->input('role_id');
 $rol = $request->input('roles');
 $roles= explode("," ,$rol);
 $validator = Validator::make($request->all(), [
 'password' => 'required|min:5|confirmed',
 'confirm_password' => 'required|min:6|confirmed'
 ]);
 // if ($validator->fails()) {
 // return redirect('/user/create')
 // ->withErrors($validator)
 // ->withInput();
 // } else {
 $employee = user::create([
 'username' => $request->input('EmployeeUsername'),
 'password' => bcrypt($request->input('EmployeePassword')),
 ]);
 $Title = $request->input('Title');
 $Gender = $request->input('Gender');
 $FName = $request->input('FName');
 $LName = $request->input('LName');
 $DOB = $request->input('DOB');
 $MaritalStatus = $request->input('MaritalStatus');
 $CountryOfBirth = $request->input('CountryOfBirth');
 $CountryOfNationality = $request->input('CountryOfNationality');
 $NationID = $request->input('NationID');
 $Image = $request->input('Image');
 $user_id = $employee->id;
 PersonalDetails::CreatePersonalDetails($Title,$Gender ,$FName ,$LName,$DOB,$MaritalStatus,$CountryOfBirth,$CountryOfNationality,$NationID,$Image,$user_id);
 $EducationMajor = $request->input('EducationMajor');
 $EducationLevel = $request->input('EducationLevel');
 $SchoolName = $request->input('SchoolName');
 $GBA = $request->input('GBA');;
 $user_id = $employee->id;
 EducationDetails::CreateEducationDetails($EducationMajor,$EducationLevel ,$SchoolName ,$GBA,$user_id);
 $CompanyName = $request->input('CompanyName');
 $StartDate = $request->input('StartDate');
 $EndDate = $request->input('EndDate');
 $Salary = $request->input('Salary');
 $JobTitle = $request->input('JobTitle');
 $UserID = $employee->id;
 ExperienceDetails::CreateExperienceDetails($CompanyName,$StartDate ,$EndDate ,$Salary,$JobTitle,$UserID);
 foreach ($roles as $role) {
 $count = DB::table('roles')->where('name', $role)->count();
 if ($count != 0) {
 $s = DB::table('roles')->where('name', $role)->first();
 DB::table('role_user')->insert([
 'user_id' => $employee->id,
 'role_id' => $s->id
 ]);
 }
 }
 Auth::login($employee, $remember = true);
 return Redirect::to('/apply/success/');
}
asked Sep 13, 2017 at 8:23
5
  • 1
    Have you tried \Request::segment(1)? 1 is basically the index number and its job is to read parameters from URL anywhere in your project. Commented Sep 13, 2017 at 8:26
  • i want to pass the url parameter that i pass to the blade Commented Sep 13, 2017 at 8:34
  • 1
    Still fine, if it is in the blade you can do {{Request::segment(1)}}. Give it a look Commented Sep 13, 2017 at 8:38
  • it worked so {{Request::segment(1)}} gets the first parameter {{Request::segment(2)}} gets the second parameter cool thanks for the help bro :* Commented Sep 13, 2017 at 8:45
  • 1
    Great, So I'm gonna post it as answer too Commented Sep 13, 2017 at 8:46

3 Answers 3

1

In controller \Request::segment(2) In blade {{Request::segment(2)}}

2 is the index number, feel free to change it based on your needs.

answered Sep 13, 2017 at 8:47
Sign up to request clarification or add additional context in comments.

Comments

0

I would pass the id to the register url as an optional parameter.

Like this : Route::post('register/{vacanciesId?}', 'UsersController@careerportalregister');

Then get it in the controller and do what you want with it.

You could also save it in session.

Have a nice day,

Comments

0

Assuming this is on your vacancies page and the problem you are having is that you are not able to put the ID into the url you need to iterate through each vacancy and set the ID that way so that the links are generated with a unique ID for each vacancy.

Also considering you have two different ways to provide details for the vacancy you would need to to create two Route::Get' for /apply/success/{{id}} and /careers/{{id}}/apply

When displaying the vacancies, I assume you are retrieving from the datebase and iterating through the results to show in the view? You should edit your post and display that.

answered Sep 13, 2017 at 8:39

Comments

Your Answer

Draft saved
Draft discarded

Sign up or log in

Sign up using Google
Sign up using Email and Password

Post as a guest

Required, but never shown

Post as a guest

Required, but never shown

By clicking "Post Your Answer", you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.