Предишна - Следваща с PHP

oniq

Registered
Здравейте, имам една дилема тук, и нещо не мога да разбера логиката.

Имам продукти към дадена категория, и искам когато се отвори продукта да давам следваща и предишна.

Как ще стане номера да взема следващия продукт, след този, който съм отворил. Съответно и предишния.

представям си го нещо в масив, ии.... после? :oops:
 
Да речем че id-то на сегащния продукт го взимаш с променлива $id

Ето ти примерен код:

PHP:
<?php
// include_once "config file";
$id = htmlspecialchars($_GET['id']);
$a = mysql_query("SELECT * FROM `products` WHERE `id` < '$id' LIMIT 1") or die(mysql_error());
$b = mysql_num_rows($a);
if ($b > 0)
{
$c = mysql_fetch_array($a);
$pid = $c['id'];
$predishen = "<a href='index.php?page=products&id=$pid'>Предишен</a>";
}
else
{
$predishen = "Предишен";
}
$d = mysql_query("SELECT * FROM `products` WHERE `id` > '$id' LIMIT 1") or die(mysql_error());
$e = mysql_num_rows($d);
if ($e > 0)
{
$f = mysql_fetch_array($d);
$nid = $f['id'];
$sledvasht = "<a href='index.php?page=products&id=$nid'>Следващ</a>";
}
else
{
$sledvasht = "Следващ";
}
echo $predishen." | ".$sledvasht;
?>

Нещо такова би трябвало да е. Поне преди време така си бях правил една галерия и работеше. Сега това не съм го тествал , че не ми се правеше и база данни със записи и т.н.. ако има някакъв проблем - казвай ;)
 
Кода , който ти давам е на @proba (над мен), просто съм намалил излишните променливи - кода работи и точката е за @proba. ;-)

PHP:
<?php
if(isSet($_GET['id'])) {
	$id = (int)$_GET['id'];
	$id = str_replace ("-", "", $id);
} else {
	$id = "";
}
$a = mysql_query("SELECT * FROM `products` WHERE `id` < '{$id}' LIMIT 1;") or die(mysql_error());
if ((mysql_num_rows($a) > 0)&& ($id != NULL)) {
	$c   = mysql_fetch_array($a);
	$pid = $c['id'];
	$predishen = "<a href='index.php?page=products&id=$pid'>Предишен</a>";
} else {
	$predishen = "Предишен";
}

$d = mysql_query("SELECT * FROM `products` WHERE `id` > '{$id}' LIMIT 1;") or die(mysql_error());
if ((mysql_num_rows($d) > 0)&& ($id != NULL)) {
	$f   = mysql_fetch_array($d);
	$nid = $f['id'];
	$sledvasht = "<a href='index.php?page=products&id=$nid'>Следващ</a>";
} else {
	$sledvasht = "Следващ";
}
echo $predishen." | ".$sledvasht;
?>
 

Back
Горе