Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?
- $radio = $_GET['radio'];
- // TABLES T BE SEARCHED
- switch ($_GET['radio'])
- {
- case 1:
- //A) IF THE USER SELECTED A CATEGORY AND A REGION
- if ($id_cat != 'any' AND $id_reg!='any') {
- $sql = "SELECT COUNT(*) as total FROM reports AS T1, sector_index_reports AS T2, country_index_reports AS T3 WHERE ($id_cat) AND (T1.id=T2.id_obiekt) AND ($id_reg) AND (T1.id=T3.id_obiekt) AND ".$name_clause ;
- $sql2 = "SELECT id,name,organizer_id,no_pages,publication_date,price,currency FROM reports AS T1, sector_index_reports AS T2, country_index_reports AS T3 WHERE ($id_cat) AND (T1.id=T2.id_obiekt) AND ($id_reg) AND (T1.id=T3.id_obiekt) AND ".$name_clause." LIMIT" ; }
- //B)IF THE USER SELECTED ONLY A CATEGORY
- else if ($id_cat != 'any' AND $id_reg =='any') {
- $sql1 = "SELECT COUNT(*) as total FROM reports AS T1, sector_index_reports AS T2 WHERE ($id_cat) AND (T1.id=T2.id_obiekt) AND ".$name_clause ;
- $sql2 = "SELECT id,name,organizer_id,no_pages,publication_date,price,currency FROM reports AS T1, sector_index_reports AS T2 WHERE
- ($id_cat) AND (T1.id=T2.id_obiekt) AND ".$name_clause." LIMIT" ;
- }
- //C)IF THE USER SELECTED ONLY REGION
- else if ($id_cat == 'any' AND $id_reg!='any') {
- $sql1 = "SELECT COUNT(*) as total FROM reports AS T1, country_index_reports AS T3 WHERE ($id_reg) AND (T1.id=T3.id_obiekt) AND ".$name_clause ;
- $sql2 = "SELECT id,name,organizer_id,no_pages,publication_date,price,currency FROM reports AS T1, country_index_reports AS T3 WHERE
- ($id_reg) AND (T1.id=T3.id_obiekt) AND ".$name_clause." LIMIT" ;
- }
- // D)GENERAL SEARCH, NOT APPLYING FILTERS
- else if ($id_cat == 'any' AND $id_reg == 'any')
- { $sql1 = "SELECT COUNT(*) as total FROM reports WHERE ".$name_clause;
- $sql2 = "SELECT id,name,organizer_id,no_pages,publication_date,price,currency FROM reports WHERE ".$name_clause." LIMIT"; }
- break;
- // END FOR MARKET REPORT TITLES OPTIONS
- case 2:
- //A) IF THE USER SELECTED A CATEGORY AND A REGION
- if ($id_cat != 'any' AND $id_reg!='any') {
- $sql1 = "SELECT COUNT(*) as total FROM swots AS T1, sector_index_reports AS T2, country_index_reports AS T3 WHERE ($id_cat) AND (T1.id=T2.id_obiekt) AND ($id_reg) AND (T1.id=T3.id_obiekt) AND ".$name_clause ;
- $sql2 = "SELECT id,name,organizer_id,no_pages,publication_date,price,currency FROM swots AS T1, sector_index_reports AS T2, country_index_reports AS T3 WHERE ($id_cat) AND (T1.id=T2.id_obiekt) AND ($id_reg) AND (T1.id=T3.id_obiekt) AND ".$name_clause." LIMIT" ;
- }
- //B)IF THE USER SELECTED ONLY A CATEGORY
- else if ($id_cat != 'any' AND $id_reg =='any') {
- $sql1 = "SELECT COUNT(*) as total FROM swots AS T1, sector_index_reports AS T2 WHERE ($id_cat) AND (T1.id=T2.id_obiekt) AND ".$name_clause ;
- $sql2 = "SELECT id,name,organizer_id,no_pages,publication_date,price,currency FROM swots AS T1, sector_index_reports AS T2 WHERE
- ($id_cat) AND (T1.id=T2.id_obiekt) AND ".$name_clause." LIMIT" ;
- }
- //C)IF THE USER SELECTED ONLY REGION
- else if ($id_cat == 'any' AND $id_reg!='any') {
- $sql1 = "SELECT COUNT(*) as total FROM swots AS T1, country_index_reports AS T3 WHERE ($id_reg) AND (T1.id=T3.id_obiekt) AND ".$name_clause ;
- $sql2 = "SELECT id,name,organizer_id,no_pages,publication_date,price,currency FROM swots AS T1, country_index_reports AS T3 WHERE
- ($id_reg) AND (T1.id=T3.id_obiekt) AND ".$name_clause." LIMIT" ;
- }
- // D)GENERAL SEARCH, NOT APPLYING FILTERS
- else if ($id_cat == 'any' AND $id_reg == 'any') {
- $sql1 = "SELECT COUNT(*) as total FROM swots WHERE ".$name_clause ;
- $sql2 = "SELECT id,name,organizer_id,no_pages,publication_date,price,currency FROM swots WHERE ".$name_clause." LIMIT" ;
- }
- break;
- // END FOR SWOTS OPTIONS
- case 3:
- //A) IF THE USER SELECTED A CATEGORY AND A REGION
- if ($id_cat != 'any' AND $id_reg!='any') {
- $sql1 = "SELECT COUNT(*) as total FROM reports AS T1, sector_index_reports AS T2, country_index_reports AS T3 WHERE ($id_cat) AND (T1.id=T2.id_obiekt) AND ($id_reg) AND (T1.id=T3.id_obiekt) AND ((".$name_clause.") OR (".$description_clause.") OR (".$table_clause."))";
- $sql2 = "SELECT id,name,organizer_id,no_pages,publication_date,price,currency FROM reports AS T1, sector_index_reports AS T2, country_index_reports AS T3 WHERE ($id_cat) AND (T1.id=T2.id_obiekt) AND ($id_reg) AND (T1.id=T3.id_obiekt) AND ((".$name_clause.") OR (".$description_clause.") OR (".$table_clause.")) LIMIT ";
- }
- //B)IF THE USER SELECTED ONLY A CATEGORY
- else if ($id_cat != 'any' AND $id_reg =='any') {
- $sql1 = "SELECT COUNT(*) as total FROM reports AS T1, sector_index_reports AS T2 WHERE ($id_cat) AND (T1.id=T2.id_obiekt) AND ((".$name_clause.") OR (".$description_clause.") OR (".$table_clause."))";
- $sql2 = "SELECT id,name,organizer_id,no_pages,publication_date,price,currency FROM reports AS T1, sector_index_reports AS T2 WHERE ($id_cat) AND (T1.id=T2.id_obiekt) AND ((".$name_clause.") OR (".$description_clause.") OR (".$table_clause.")) LIMIT ";
- }
- //C)IF THE USER SELECTED ONLY REGION
- else if ($id_cat == 'any' AND $id_reg!='any') {
- $sql1 = "SELECT COUNT(*) as total FROM reports AS T1, country_index_reports AS T3 WHERE ($id_reg) AND (T1.id=T3.id_obiekt) AND ((".$name_clause.") OR (".$description_clause.") OR (".$table_clause."))";
- $sql2 = "SELECT id,name,organizer_id,no_pages,publication_date,price,currency FROM reports AS T1, country_index_reports AS T3 WHERE ($id_reg) AND (T1.id=T3.id_obiekt) AND ((".$name_clause.") OR (".$description_clause.") OR (".$table_clause.")) LIMIT ";
- }
- // D)GENERAL SEARCH, NOT APPLYING FILTERS
- else if ($id_cat == 'any' AND $id_reg == 'any') {
- $sql1 = "SELECT COUNT(*) as total FROM reports WHERE (".$name_clause.") OR (".$description_clause.") OR (".$table_clause.")";
- $sql2 = "SELECT id,name,organizer_id,no_pages,publication_date,price,currency FROM reports WHERE (".$name_clause.") OR (".$description_clause.") OR (".$table_clause.") LIMIT ";
- }
- break;
- // END FOR ALL CONTENT
- default:
- trigger_error('SCRIPT UNDER ATTACK, RUN LIKE HELL', E_USER_ERROR);
- }
- // DEBUGGING INFORMATION TO SHOW THE REQUEST DATA AND THE RESULTING QUERY
- $res = $mysqli->query($sql1);
- // IF mysqli_query() RETURNS FALSE, LOG AND SHOW THE ERROR
- if (!$res)
- {
- $err
- = "QUERY FAIL: "
- . $sql
- . ' ERRNO: '
- . $mysqli->errno
- . ' ERROR: '
- . $mysqli->error
- ;
- trigger_error($err, E_USER_ERROR);
- }
- // IF WE GET THIS FAR, THE QUERY SUCCEEDED AND WE HAVE A RESULT OBJECT IN $res
- // AND SO WE CAN NOW USE $res IN OTHER MYSQLI FUNCTIONS
- // DETERMINE HOW MANY ROWS OF RESULTS WE GOT
- $num = $res->fetch_assoc();
- $total_pages=(int)$num['total'];
- $res->free();
- $num_fmt = number_format($num['total']);
- if (!$num)
- {
- echo "<br/>QUERY: $sq2 ";
- echo "<br/>FOUND NO DATA ";
- echo PHP_EOL;
- }
- else
- {
- echo "<br/>QUERY: $sql2 ";
- echo "<br/>FOUND $num_fmt ROWS OF DATA ";
- echo PHP_EOL;
- }
- echo PHP_EOL;
- echo "<TABLE cellspacing=\"3\" border=\"1\" cellpadding=\"8\">\n";
- echo "</TR>\n";
- ?>
- <?php ///// PAGINATION CODE STARTS
- $valorpaginacion = "keyword=$url_pagination&categories=$id_cat_paginacion®ions=$id_reg_paginacion&radio=$radio" ;
- var_dump($valorpaginacion);
- var_dump($keywords);
- // How many adjacent pages should be shown on each side?
- $adjacents = 3;
- /* Setup vars for query. */
- $targetpage = "search3.php"; //your file name (the name of this file)
- $limit = 50; //how many items to show per page
- $page = $_GET['page'];
- if($page)
- $start = ($page - 1) * $limit; //first item to display on this page
- else
- $start = 0; //if no page var is given, set start to 0
- /* Get data. */
- /* Setup page vars for display. */
- if ($page == 0) $page = 1; //if no page var is given, default to 1.
- $prev = $page - 1; //previous page is page - 1
- $next = $page + 1; //next page is page + 1
- $lastpage = ceil($total_pages/$limit); //lastpage is = total pages / items per page, rounded up.
- $lpm1 = $lastpage - 1; //last page minus 1
- $res= $mysqli->query($sql2 .$start.','. $limit);
- /*
- Now we apply our rules and draw the pagination object.
- We're actually saving the code to a variable in case we want to draw it more than once.
- */
- $pagination = "";
- if($lastpage > 1)
- {
- $pagination .= "<div class=\"pagination\">";
- //previous button
- if ($page > 1)
- $pagination.= "<a href=\"$targetpage?$valorpaginacion&page=$prev\"><< previous</a>";
- else
- $pagination.= "<span class=\"disabled\"><< previous</span>";
- //pages
- if ($lastpage < 7 + ($adjacents * 2)) //not enough pages to bother breaking it up
- {
- for ($counter = 1; $counter <= $lastpage; $counter++)
- {
- if ($counter == $page)
- $pagination.= "<span class=\"current\">$counter</span>";
- else
- $pagination.= "<a href=\"$targetpage?$valorpaginacion&page=$counter\">$counter</a>";
- }
- }
- elseif($lastpage > 5 + ($adjacents * 2)) //enough pages to hide some
- {
- //close to beginning; only hide later pages
- if($page < 1 + ($adjacents * 2))
- {
- for ($counter = 1; $counter < 4 + ($adjacents * 2); $counter++)
- {
- if ($counter == $page)
- $pagination.= "<span class=\"current\">$counter</span>";
- else
- $pagination.= "<a href=\"$targetpage?$valorpaginacion&page=$counter\">$counter</a>";
- }
- $pagination.= "...";
- $pagination.= "<a href=\"$targetpage?$valorpaginacion&page=$lpm1\">$lpm1</a>";
- $pagination.= "<a href=\"$targetpage?$valorpaginacion&page=$lastpage\">$lastpage</a>";
- }
- //in middle; hide some front and some back
- elseif($lastpage - ($adjacents * 2) > $page && $page > ($adjacents * 2))
- {
- $pagination.= "<a href=\"$targetpage?$valorpaginacion&page=1\">1</a>";
- $pagination.= "<a href=\"$targetpage?$valorpaginacion&page=2\">2</a>";
- $pagination.= "...";
- for ($counter = $page - $adjacents; $counter <= $page + $adjacents; $counter++)
- {
- if ($counter == $page)
- $pagination.= "<span class=\"current\">$counter</span>";
- else
- $pagination.= "<a href=\"$targetpage?$valorpaginacion&page=$counter\">$counter</a>";
- }
- $pagination.= "...";
- $pagination.= "<a href=\"$targetpage?$valorpaginacion&page=$lpm1\">$lpm1</a>";
- $pagination.= "<a href=\"$targetpage?$valorpaginacion&page=$lastpage\">$lastpage</a>";
- }
- //close to end; only hide early pages
- else
- {
- $pagination.= "<a href=\"$targetpage?$valorpaginacion&page=1\">1</a>";
- $pagination.= "<a href=\"$targetpage?$valorpaginacion&page=2\">2</a>";
- $pagination.= "...";
- for ($counter = $lastpage - (2 + ($adjacents * 2)); $counter <= $lastpage; $counter++)
- {
- if ($counter == $page)
- $pagination.= "<span class=\"current\">$counter</span>";
- else
- $pagination.= "<a href=\"$targetpage?$valorpaginacion&page=$counter\">$counter</a>";
- }
- }
- }
- //next button
- if ($page < $counter - 1)
- $pagination.= "<a href=\"$targetpage?$valorpaginacion&page=$next\">next >></a>";
- else
- $pagination.= "<span class=\"disabled\">next >></span>";
- $pagination.= "</div>\n";
- }
- while ($row = $res->fetch_array()) {
- //get the publisher name
- $organizerSql = $mysqli->query("SELECT nazwa FROM baza_obiektow_inne WHERE id=" . $row['organizer_id'] . " LIMIT 1");
- $organizer = mysqli_fetch_assoc($organizerSql);
- $pretty_date = date('F Y', strtotime($row['publication_date']));
- echo "<tr>\n";
- $simbolos_reemplazar = array (" ","%","/");
- printf("<td><a href='http://embs-group.com/%s,%s'>%s</a></td>", $row['id'], str_replace( $simbolos_reemplazar, "_", $row['name']), $row['name']);
- printf("<td>%s</td>", $organizer['nazwa']);
- printf("<td>%s</td>", $row['no_pages']);
- printf("<td>%s</td>", $pretty_date);
- printf("<td>%s</td>", $row['price']);
- printf("<td>%s</td>", $row['currency']);
- echo "</tr>\n";
- }
- echo $pagination?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement