Beispiel #1
0
function search_question($query, $cid, $count, $page = 1)
{
    //Search questions by post title and post body
    $output = '';
    $uid = isset($_SESSION['uid']) ? $_SESSION['uid'] : 0;
    $posts = array();
    if (isset($_SESSION['rid']) && $_SESSION['rid'] != 2) {
        $result = mysql_query("SELECT * FROM " . PREFIX . "POST WHERE (Post_Title LIKE '%" . $query . "%' OR Post_Question LIKE '%" . $query . "%' OR Post_Answer LIKE '%" . $query . "%' OR Post_URL LIKE '%" . $query . "%')");
    } elseif (!isset($_SESSION['rid']) || $_SESSION['rid'] == 2) {
        $result = mysql_query("SELECT * FROM " . PREFIX . "POST WHERE Post_Current=1 AND (Post_Title LIKE '%" . $query . "%' OR Post_Question LIKE '%" . $query . "%' OR Post_Answer LIKE '%" . $query . "%' OR Post_URL LIKE '%" . $query . "%')");
    }
    if ($result) {
        while ($row = mysql_fetch_assoc($result)) {
            $posts[] = $row;
        }
    }
    if ($cid != 0) {
        $posts = array_filter($posts, array(new Filter($cid), 'filter_cid'));
    }
    usort($posts, 'sort_post_date_descend');
    $pagination = new pagination($posts, $page, $count, 5);
    $pagination->setShowFirstAndLast(true);
    $pagination->setMainSeperator('');
    $posts = $pagination->getResults();
    $output .= '<div class="paging">' . $pagination->getLinks() . '</div>';
    $output .= '<div class="posts">';
    for ($i = 0; $i < count($posts); $i++) {
        if (isset($posts[$i])) {
            $pid = $posts[$i]['Post_ID'];
            $output .= view_post($pid, $uid);
            $output .= $i != count($posts) - 1 ? '<hr>' : '';
        }
    }
    $output .= '</div>';
    $output .= '<div class="paging">' . $pagination->getLinks() . '</div>';
    $output .= '<script>
				function turnPage(page) {
					$("#feeds").load("triggers/paging_search.php",{count:' . $count . ',cid:' . $cid . ',page:page,keyword:"' . $query . '"});
				}
				</script>';
    if (count($posts) == 0) {
        $output .= '<h3>There is no results for this search criteria.</h3>';
    }
    return $output;
}
ini_set('display_errors', 'On');
error_reporting(E_ALL);
// Include the pagination class
include 'pagination.class.php';
// some example data
foreach (range(1, 200) as $value) {
    $products[] = array('Product' => 'Product ' . $value, 'Price' => rand(100, 1000));
}
// If we have an array with items
if (count($products)) {
    // Create the pagination object
    $pagination = new pagination($products, isset($_GET['page']) ? $_GET['page'] : 1, 15);
    // Decide if the first and last links should show
    $pagination->setShowFirstAndLast(false);
    // You can overwrite the default seperator
    $pagination->setMainSeperator(' | ');
    // Parse through the pagination class
    $productPages = $pagination->getResults();
    // If we have items
    if (count($productPages) != 0) {
        // Create the page numbers
        echo $pageNumbers = '<div class="numbers">' . $pagination->getLinks($_GET) . '</div>';
        // Loop through all the items in the array
        foreach ($productPages as $productArray) {
            // Show the information about the item
            echo '<p><b>' . $productArray['Product'] . '</b> &nbsp; &pound;' . $productArray['Price'] . '</p>';
        }
        // print out the page numbers beneath the results
        echo $pageNumbers;
    }
}