echo'</span>';
echo '<span class="search_submit_form">';
echo '<span class="form_inside"><input type="submit" value="Search" class="form_button"></span>';
echo'</span>';
echo '</form>';
}
if (isset($_GET['search'])) {
session_start();
if (isset($_POST['title'])) {
$_SESSION['title'] = $_POST['title'];
}
$title_search = $_SESSION['title'];
if (isset($_POST['poster'])) {
$_SESSION['poster'] = $_POST['poster'];
}
$poster_search = $_SESSION['poster'];
if (isset($_POST['author'])) {
$_SESSION['author'] = $_POST['author'];
}
$author_search = $_SESSION['author'];
if (isset($_POST['body'])) {
$_SESSION['body'] = $_POST['body'];
}
$body_search = $_SESSION['body'];
////constants////
if ($_POST['item1'] == "0") {
$item1 = "true";
}
else {
$item1 = "false";
}
if ($_POST['item2'] == "0") {
$item2 = "true";
}
else {
$item2 = "false";
}
if ($_POST['item3'] == "0") {
$item3 = "true";
}
else {
$item3 = "false";
}
// how many rows to show per page
$rowsPerPage = 20;
// by default we show first page
$pageNum = 1;
// if $_GET['page'] defined, use it as page number
if(isset($_GET['page']))
{
$pageNum = $_GET['page'];
}
// counting the offset
$offset = ($pageNum - 1) * $rowsPerPage;
// how many rows we have in database
$query = "SELECT COUNT(story.`id`) AS `numrows`, tag.`id`, tag.`item1`, tag.`item2`, tag.`item3` FROM `storys` AS `story` LEFT JOIN `storys_key` AS `tag` ON tag.`story_id` = story.`id` WHERE
story.`title` LIKE'%$title_search%'
OR
LOWER(story.`title`) LIKE '%$title_search%'
OR
UPPER(story.`title`) LIKE '%$title_search%'
OR
story.`body` LIKE'%$body_search%'
OR
LOWER(story.`body`) LIKE '%$body_search%'
OR
UPPER(story.`body`) LIKE '%$body_search%'
OR
story.`author` LIKE'%$author_search%'
OR
LOWER(story.`author`) LIKE '%$author_search%'
OR
UPPER(story.`author`) LIKE '%$author_search%'
OR
story.`poster` LIKE'%$poster_search%'
OR
LOWER(story.`poster`) LIKE '%$poster_search%'
OR
UPPER(story.`poster`) LIKE '%$poster_search%'
";
$result = mysql_query($query) or die('Error, query failed');
$row = mysql_fetch_array($result, MYSQL_ASSOC);
$numrows = $row['numrows'];
// how many pages we have when using paging?
$maxPage = ceil($numrows/$rowsPerPage);
// print the link to access each page
$self = $_SERVER['PHP_SELF'];
$nav = '';
for($page = 1; $page <= $maxPage; $page++)
{
if ($page == $pageNum)
{
$nav .= "<span class=\"number_button_norm\">$page</span>"; // no need to create a link to current page
}
else
{
if ($_GET['view_mode'] == "") {
$nav .= "<span class=\"number_button\"><a href=\"$self?page=$page\">$page</a></span>";
}
else {
$nav .= "<span class=\"number_button\"><a href=\"$self?search&view_mode=".$_GET['view_mode']."&page=$page\">$page</a></span>";
}
}
}
$sql = "SELECT rate.`total_value`, rate.`total_votes`, story.`id`, story.`title`, story.`author`, story.`poster`, story.`views`, story.`body`, story.`flag`, COUNT(comment.`story_id`) AS `commentcount` tag.`id`, tag.`item1`, tag.`item2`, tag.`item3` FROM `storys` story LEFT JOIN `storys_comments` comment ON story.`id`= comment.`story_id` LEFT JOIN `stories_ratings` AS `rate` ON story.`id` = rate.`id` LEFT JOIN `storys_key` AS `tag` ON tag.`story_id` = story.`id`
WHERE
story.`title` LIKE'%$title_search%'
OR
LOWER(story.`title`) LIKE '%$title_search%'
OR
UPPER(story.`title`) LIKE '%$title_search%'
OR
story.`body` LIKE'%$body_search%'
OR
LOWER(story.`body`) LIKE '%$body_search%'
OR
UPPER(story.`body`) LIKE '%$body_search%'
OR
story.`author` LIKE'%$author_search%'
OR
LOWER(story.`author`) LIKE '%$author_search%'
OR
UPPER(story.`author`) LIKE '%$author_search%'
OR
story.`poster` LIKE'%$poster_search%'
OR
LOWER(story.`poster`) LIKE '%$poster_search%'
OR
UPPER(story.`poster`) LIKE '%$poster_search%'
GROUP BY story.id ORDER BY ".$filter_by." LIMIT $offset, $rowsPerPage";
if ($numrows <= $rowsPerPage) {
//dont display page numbers//
}
else {
echo "<span class=\"story_pagenumber\"><span class=\"story_page_number\">Page number</span>".$nav."</span>";
}
$result = mysql_query($sql) or die("Query failed");
if(mysql_num_rows($result))
{
while($row = mysql_fetch_array($result))
{
$id = $row["id"];
$current_rating = $row["total_value"];
$count = $row["total_votes"];
$rating_unitwidth = "20";
$body = substr($row["body"], 0, 500);
// determine whether the user has voted, so we know how to draw the ul/li
echo '<div class="ext_box">';
if (stripslashes($row["author"]) == "") {
printf(
'
<div class="table_row">
<div class="ext_left">
<span class="ext_title">%s</span>
<span class="ext_body">%s...</p></span>
<span class="info_ext_storys">
<span class="read_more"><a href="show_story.php?id=%s">Read more</a></span>
<span class="ext_views">Views: (%s) | Comments (%s)</span>
</span>
</div>
<div class="ext_right">
<span class="ext_poster_title">Posted by</span>
<span class="ext_poster">%s</span>
',
stripslashes($row["title"]),
stripslashes($body),
stripslashes($row["id"]),
stripslashes($row["views"]),
stripslashes($row["commentcount"]),
stripslashes($row["poster"])
);
}
else if (stripslashes($row["poster"]) == "") {
printf(
'
<div class="table_row">
<div class="ext_left">
<span class="ext_title">%s</span>
<span class="ext_body">%s...</p></span>
<span class="info_ext_storys">
<span class="read_more"><a href="show_story.php?id=%s">Read more</a></span>
<span class="ext_views">Views: (%s) | Comments (%s)</span>
</span>
</div>
<div class="ext_right">
<span class="ext_author_title">Author</span>
<span class="ext_author">%s</span>
',
stripslashes($row["title"]),
stripslashes($body),
stripslashes($row["id"]),
stripslashes($row["views"]),
stripslashes($row["commentcount"]),
stripslashes($row["author"])
);
}
else {
printf(
'
<div class="table_row">
<div class="ext_left">
<span class="ext_title">%s</span>
<span class="ext_body">%s...</p></span>
<span class="info_ext_storys">
<span class="read_more"><a href="show_story.php?id=%s">Read more</a></span>
<span class="ext_views">Views: (%s) | Comments (%s)</span>
</span>
</div>
<div class="ext_right">
<span class="ext_poster_title">Posted by</span>
<span class="ext_poster">%s</span>
<span class="ext_author_title">Author</span>
<span class="ext_author">%s</span>
',
stripslashes($row["title"]),
stripslashes($body),
stripslashes($row["id"]),
stripslashes($row["views"]),
stripslashes($row["commentcount"]),
stripslashes($row["poster"]),
stripslashes($row["author"])
);
}
echo '<span class="ext_rating_title">Rating</span>';
// now draw the rating bar
$rating_width = @number_format($current_rating/$count,2)*$rating_unitwidth;
$rating1 = @number_format($current_rating/$count,1);
$rating2 = @number_format($current_rating/$count,2);
echo '<span class="ext_rating">';
echo '<span class="rating">';
echo '<div class="ratingblock">';
echo '<div class="bg_nd">';
echo '<div id="unit_long'.$id.'">';
echo '<ul id="unit_ul'.$id.'" class="unit-rating" style="width:'.$rating_unitwidth*$units.'px;">';
echo '<li class="current-rating" style="width:'.$rating_width.'px;">Currently '.$rating2.'/'.$units.'</li>';
echo '</ul>';
echo '</div>';
echo '</div>';
echo '</div>';
echo '</span>';
echo '</span>';
echo '<span class="ext_tags_title">Tags</span>';
echo '<span class="ext_tags">';
include("key.php");
echo '</span';
echo '</div>';
echo '</div>'; // end of ext right
echo '</div>'; // end of ext box
}
}
else
{
print '<div class="table_row"><span class="title"><p>Your search turned up no results.</p></span></div>';
}
}
?>