I just change the form method to GET because all the values disappear when I click the Next button. On the first page it works fine then when I go to the next page it says undefine variables and index.
<?php
session_start();
error_reporting(0);
require_once "Careerjet_API.php";
$cjapi = new Careerjet_API('en_PH');
$api = new Careerjet_API('en_PH') ;
$tab = $nbsp;
#this should get the current page and resets if you press the main button
if (isset($_GET['page'])) {
if ($_GET['page'] != false) {
$page = $_GET['page'];
} else {
$page = 1; }
}
# Or from parameters.
$output = '';
$thead = '';
$searchq = $_GET['key_search'];
$searchw = $_GET['location'];
$sort = $_GET['sort'];
$contracttype = $_GET['contracttype'];
$contractperiod = $_GET['contractperiod'];
$result = $api->search(array(
'keywords' => $searchq,
'location' => $searchw,
'page' => $page ,
'affid' => '678bdee048',
'pagesize' => 6,
'sort' => $sort,
'contracttype' => $contracttype,
'contractperiod' => $contractperiod,
));
if ( $result->type == 'JOBS' ){
$jobs = $result->jobs;
if($jobs == false) {
$thead = '<div class="card">
<h1 class="card-body">No results found</h1>
<p class="mb-2">No results found. Please modify your search.</p>
</div>';
} else {
foreach( $jobs as $job ) {
$output .= ' <tbody>
<tr scope="row" align="center">
<td>'.$job->title.'</td>
<td width="150px">'.$job->locations.'</td>
<td align = "center">'.$job->company.'</td>
<td align = "center" width="150px">'.$job->salary.'</td>
<td><small class="d-block" >'.$job->description.'</small></td>
<td align = "center">'.$job->date.'</td>
<td width="20px"><a href="'.$job->url.'">APPLY NOW</a></td>
</tr>
</tbody> ';
$thead = '
<div class="table-responsive1">
<table class="table table-striped table-dark table-striped">
<thead>
<tr align = "center">
<th scope="col">Hiring</th>
<th scope="col">Location</th>
<th scope="col">Company</th>
<th scope="col">Salary</th>
<th scope="col">Description</th>
<th scope="col">Date Posted</th>
<th scope="col"></th>
</tr>
</thead>
'.$output.'
</table>
</div>
</div>';
}
}
}
# When location is ambiguous
if ( $result->type == 'LOCATIONS' ){
$locations = $result->solveLocations ;
foreach ( $locations as $loc ){
echo $loc->name."\n" ; # For end user display
## Use $loc->location_id when making next search call
## as 'location_id' parameter
}
}
if ($contracttype == 'p') {
$contractname = "Permanent"; }
if ($contracttype == 'c') {
$contractname = "Contract"; }
if ($contracttype == 't') {
$contractname = "Temporary"; }
if ($contracttype == 'i') {
$contractname = "Training"; }
if ($contracttype == 'v') {
$contractname = "Voulountary"; }
if ($contractperiod == 'f') {
$contractnameP = "Full Time"; }
if ($contractperiod == 'p') {
$contractnameP = "Part Time"; }
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>JobSite || Home</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" type="text/css" href="new.css">
<link rel="icon" href="https://www.nicepng.com/png/full/248-2487394_magnifying-glass-vector-magnifying-glass-icon.png">
<link rel="stylesheet" type="text/css" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/all.min.css"/>
<script src="https://cdn.jsdelivr.net/npm/
[email protected]/dist/js/bootstrap.bundle.min.js" integrity="sha384-ka7Sk0Gln4gmtz2MlQnikT1wXgYsOg+OMhuP+IlRH9sENBO0LRn5q+8nbTov4+1p" crossorigin="anonymous"></script>
<link rel="stylesheet" type="text/css" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta.2/css/bootstrap.min.css" integrity="sha384-PsH8R72JQ3SOdhVi3uxftmaW6Vc51MKb0q5P2rRUpPvrszuE4W1povHYgTpBfshb" crossorigin="anonymous">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.3/umd/popper.min.js" integrity="sha384-vFJXuSJphROIrBnz7yo7oB41mKfc8JzQZiCq4NCceLEaO4IHwicKwpJf9c9IpFgh" crossorigin="anonymous"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta.2/js/bootstrap.min.js" integrity="sha384-alpBpkh1PFOepccYVYDB4do5UnbKysX5WZXm3XxPqe5iKTfUKjNkCk9SaVuEZflJ" crossorigin="anonymous"></script>
<style>
.table td {
text-align: center;
}
@media (min-width: 1200px) {
.container{
max-width: 1500px;
}
}
</style>
</head>
<body class="bg-image" style="background-image: url('bgwallpaper.jpg'); height: 100vh; background-repeat: repeat-y;">
<!-- Header -->
<nav>
<div class="logo"><a href="searchbar.php">JOBsite</a></div>
<label for="btn" class="icon">
<span class="fas fa-bars"></span>
</label>
<input type="checkbox" id="btn">
<ul>
<li><a href="#">About</a></li>
<li>
<a href="#">Services</a>
<ul>
<li><a href="#">Interview tips</a></li>
<li><a href="#">Job Strategy</a></li>
<li><a href="#">Pandemic advice</a></li>
<li><a href="#">Career management</a></li>
</ul>
</li>
<li>
<a href="#">Features</a>
<ul>
<li><a href="#">Resume</a></li>
<li><a href="#">Employer</a></li>
</ul>
</li>
<li>
<a href="#">Contacts</a>
<ul>
<li><a href="#">Inquiry</a></li>
<li><a href="#">DOLE</a></li>
<li><a href="#">JobSITE</a></li>
</ul>
</li>
<li>
<?php if($_SESSION['username'])
echo '<a href="logout.php">Logout</a></li>';
else{
echo '<li><a href="login.php">Login/Register</a></li>'; }
?>
</li>
</ul>
</nav>
<br>
<br>
<div class="container">
<div class="row">
<div class="col-lg-8 offset-lg">
<form action = "searchbar-result.php" method = "GET">
<h3 class="text-center text-light">Find Better. Faster with JobSearch</h3>
<div class="input-group" id="adv-search">
<input type="text" class="form-control form-control-search" style="margin-right:5px;" name="key_search" placeholder="Search for your job." />
<input type="text" class="form-control form-control-search" style="margin-right:5px;" name="location" placeholder="Insert Location" />
<div class="dropdown">
<button class="btn btn-secondary dropdown-toggle" type="button" id="dropdownMenuButton" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
Sort by?
</button>
<div class="dropdown-menu" aria-labelledby="dropdownMenuButton">
<label for="relevance" class="dropdown-item">Relevance</label>
<input type="radio" id="relevance" name="sort" value="relevance">
<label for="salary" class="dropdown-item">Salary</label>
<input type="radio" id="salary" name="sort" value="salary">
<label for="date" class="dropdown-item">Date</label>
<input type="radio" id="date" name="sort" value="date">
</div>
</div>
<div class="dropdown" style="margin-left: 5px">
<button class="btn btn-secondary dropdown-toggle" type="button" id="dropdownMenuButton" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
Contract Type?
</button>
<div class="dropdown-menu" aria-labelledby="dropdownMenuButton">
<label for="Permanent" class="dropdown-item">Permanent</label>
<input type="radio" id="Permanent" name="contracttype" value="p">
<label for="Contract" class="dropdown-item">Contract</label>
<input type="radio" id="Contract" name="contracttype" value="c">
<label for="Temporary" class="dropdown-item">Temporary</label>
<input type="radio" id="Temporary" name="contracttype" value="t">
<label for="Training" class="dropdown-item">Training</label>
<input type="radio" id="Training" name="contracttype" value="i">
<label for="Voluntary" class="dropdown-item">Voluntary</label>
<input type="radio" id="Voluntary" name="contracttype" value="v">
</div>
</div>
<div class="dropdown" style="margin-left: 5px">
<button class="btn btn-secondary dropdown-toggle" type="button" id="dropdownMenuButton" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
Contract Period?
</button>
<div class="dropdown-menu" aria-labelledby="dropdownMenuButton">
<label for="FullTime" class="dropdown-item">Full Time</label>
<input type="radio" id="FullTime" name="contractperiod" value="f">
<label for="PartTime" class="dropdown-item">Part Time</label>
<input type="radio" id="PartTime" name="contractperiod" value="p">
</div>
</div>
<button type="submit" name= "page" class="btn btn-primary" value="" style="margin-left: 5px"><span class="fa fa-search" aria-hidden="true"></span></button>
</div>
</div>
</form>
</div>
</div>
<br>
<br>
<div class="container">
<form method='get'>;
<div class="card ">
<div class="card-body float-left">
Found <?= $result->hits ?> Jobs || Sorted By: <?= ucfirst($sort) ?> || Contract Type: <?= ucfirst($contractname) ?> || Contract Period: <?= ucfirst($contractnameP) ?>
|| Total Page : <?php echo "<b>$result->pages</b>" ?> || [Current Page : <?php echo "<b>$page</b>" ?>]
</div>
</div>
<div align ="center">
<?php
print("$thead");
# Paging code
if( $page > 1 ){
echo "<a href='searchbar-result.php?page=".($page-1)."&sort=".$sort."&contracttype=".$contracttype."&contractperiod=".$contractperiod."' class='btn btn-primary'><<<</a> \n";
}
if ( $page < $result->pages ){
echo "<a href='searchbar-result.php?page=".($page+1)."&sort=".$sort."&contracttype=".$contracttype."&contractperiod=".$contractperiod."'class='btn btn-primary'>>>></a>";
}
?>
</form>
</div>
</div>
<br>
</body>
</html>