...

View Full Version : How Do I Just Get The Newest Products To Be Shown?



Byronwells
02-20-2010, 03:00 PM
Alrights guys

I am in the process of creating a new php page called newest. I would like it to work like this

It will automatically read the newest category that I have added to the database and the display the products under it..

This is the markerplace code at the moment



<?php
include_once ("header.php");
$cat = $_GET["cat"];
$link = $_GET["category"];
$search = $_GET["search"];
$cat_title = str_replace("_"," ",$link);

if($cat != "t")
{
$GetFile = file("http://www.digitalresellersvault.com/template/template.php");
$Content = join("", $GetFile);
$categories=$common->categories($db);
$content=str_replace("{categories}",$categories,$content);
$Pat = "/<{Begin}>(.*?)<{End}>/s";
preg_match($Pat,$Content,$Output);
$SelectedContent = $Output[1];
$q = "select *,DATE_FORMAT(product_date, '%m-%d-%Y') as date from
".$prefix."products where show_product = '1' ORDER BY Rand() LIMIT 1";

$r = $db->get_a_line($q);
$id = $r[id];
$imageurl = $r[imageurl];
$prod_description = $r[prod_description];
$salesprice = $r[price];
$product_name = $r[product_name];
$salespage_link='<a href="prods.php?pid='.$id.'">Click Here For More Information</a>';
$product_name='<a href="prods.php?pid='.$id.'">'.$product_name.'</a>';
$prod_image='<a href="prods.php?pid='.$id.'"><img src="images/'.$imageurl.'"></a>';
$Content = preg_replace($Pat,$ToReplace,$Content);
$Content = preg_replace("/{{(.*?)}}/e", "$$1", $Content);
echo $Content;
include_once ("footer.php");
exit();
}


elseif($cat == "t")
{
$search = $_GET["search"];
$link = $_GET["category"];
$cat_title = str_replace("_"," ",$link);
$GetFile = file("http://www.digitalresellersvault.com/template/template.php");
$Content = join("", $GetFile);
$categories=$common->categories($db);
$content=str_replace("{categories}",$categories,$content);
$theselect=$common->category_select($db, 'select');
$Content = str_replace("{{category_select}}", $theselect, $Content);
$Pat = "/<{Begin}>(.*?)<{End}>/s";
preg_match($Pat,$Content,$Output);
$SelectedContent = $Output[1];

if($search_txt != "")
{
$cond = "where product_name like '%".$search_txt."%' && show_product = '1'";
}
else
{
$cond = "where category = '$cat_title' && show_product = '1'";
}

########## pagination ###########
$q = "select count(*) as cnt from ".$prefix."products $cond";
$r = $db->get_a_line($q);
$count = $r[cnt];
if($count == "0")
{
$warning = "No Results Found";
}
$records=10;
$links="marketplace.php?cat=t&category=$category&search_txt=$search_txt&";
if($page=="")
{
$page=1;
}
$start=($page-1)*$records;
$Content=$common->print_page_break3($db,$Content,$count,$records,$links,$page);
########## pagination ###########

$ChangeColor = 1;
$ToReplace = "";
$GetProduct = $db->get_rsltset("select *,(SELECT
DATE_FORMAT(product_date, '%b/%d/%Y')) as formatteddate from
".$prefix."products $cond order by product_date DESC limit $start, $records");
for($i = 0; $i < count($GetProduct); $i++)
{
$bgcolor = "#FFFFFF";
@extract($GetProduct[$i]);
if($period3_interval == "D"){$interval = "Day(s)";}
if($period3_interval == "W"){$interval = "Week(s)";}
if($period3_interval == "M"){$interval = "Month(s)";}
if($period3_interval == "Y"){$interval = "Year(s)";}


$product_name='<a href="prods.php?pid='.$id.'">'.$product_name.'</a>';


if($subscription_active == "1")
{
$salesprice = $amount3." every ".$period3_value." ".$interval;
}
else
{
$salesprice = $price;
}
$prod_image='<a href="prods.php?pid='.$id.'"><img src="images/'.$imageurl.'"></a>';
$download_link='<a href="http://www.digitalresellersvault.com/go/downloads/'.$download_link.'"><img border="0" src="http://www.digitalresellersvault.com/template/images/downloadbutton.jpg" width="104" height="16"></a>';

$salespage_link='<a href="prods.php?pid='.$id.'"><img border="0" src="http://www.digitalresellersvault.com/template/images/moreinfobutton.jpg" width="104" height="16"></a>';
$ToReplace .= preg_replace($Ptn,"$$1",$SelectedContent);
}
}

$Content = preg_replace($Pat,$ToReplace,$Content);
$Content = preg_replace("/{{(.*?)}}/e", "$$1", $Content);
echo $Content;
include_once ("footer.php");
?>

Len Whistler
02-20-2010, 10:56 PM
It will automatically read the newest category that I have added to the database and the display the products under it..





sample db, status 1 = newest category


category | status

boxes | 1
widgets | 2
wood | 3






ORDER BY 1





----------

Byronwells
02-21-2010, 10:18 AM
It will automatically read the newest category that I have added to the database and the display the products under it..





sample db, status 1 = newest category


category | status

boxes | 1
widgets | 2
wood | 3






ORDER BY 1





----------

Len

Sorry but you have totally lost me.. Are you saying that the code already shows the newest one already??

CallumJohnson
02-21-2010, 01:03 PM
i would use ORDER and LIMIT

If it was me i would create a MySQL database and include a Timestamp for the products, then ORDER Timestamp and LIMIT to how many you want displayed in the SQL query.

Byronwells
02-21-2010, 01:55 PM
i would use ORDER and LIMIT

If it was me i would create a MySQL database and include a Timestamp for the products, then ORDER Timestamp and LIMIT to how many you want displayed in the SQL query.

I already got the order part in the code

Inigoesdr
02-21-2010, 05:33 PM
Either store the date added in the products table, or use an auto_increment primary key and sort by whichever you have.

Len Whistler
02-21-2010, 05:57 PM
Len

Sorry but you have totally lost me.. Are you saying that the code already shows the newest one already??

I made a major typo, should be:


db columns

category | status

boxes | 1
widgets | 2
wood | 3

mysql query

ORDER BY status

Boxes is the newest category with status set to 1



--------------

Byronwells
02-25-2010, 01:50 PM
I think you have totally misunderstood me.. I would like the newest product link to automatically read and display the newest/latest category that I have added to the script..

Len Whistler
02-25-2010, 10:25 PM
Current query:

$q = "select *,DATE_FORMAT(product_date, '%m-%d-%Y') as date from
".$prefix."products where show_product = '1' ORDER BY Rand() LIMIT 1";

I'm not sure why you have random output but if you want a certain category to output first you could try something like:

Create a category_date column.

$q = "select *,DATE_FORMAT(product_date, '%m-%d-%Y') as date from
".$prefix."products where show_product = '1' ORDER BY category_date";

OR

Create a status column, you could then easily change the order that the product categories are displayed.

$q = "select *,DATE_FORMAT(product_date, '%m-%d-%Y') as date from
".$prefix."products where show_product = '1' ORDER BY status";

There are many ways to display product categories in a certain order.


--------



EZ Archive Ads Plugin for vBulletin Copyright 2006 Computer Help Forum