Imam jos jedno pitanje, tacnije problem:
1. Napravio sam malu bazu sa jednom tabelom u kojoj se smestaju podaci o novostima na sajtu.
Znaci cilj mi je da kada upisem novu vest u bazi da mi se pojavi kao prva vest na sajtu. Takodje svaka nova vest koja se upise mora biti na prvom mestu, pa kada se upise nova vest onda je ona prva a ona prethodna je druga. To sve radi medjutim imam problem kako da napravim navigaciju vezanu za novosti u kojoj ce pisati
koja je to novost po redu?
Prvo sam napravio upit u kojoj pokazuje poslednju upisanu novost. Kao sto se vidi to sam resio uz pomoc order by da sortira po descending. Na taj nacin svaka upisana novost postaje prva. Mozda ima i bolje resenje za ovo. Za sad ovo funkcionise. Upit izgleda ovako:
$query_Recordset1 = "SELECT SifraNovosti, Datum, Naslov, Podnaslov, KratakOpis, `Online` FROM novosti ORDER BY SifraNovosti DESC";
E sad projekat projektujem u dreamweaveru tako da sam koristio server behaviour opciju "Recordset Navigation Status" koja upravo pravi navigaciju po tim novostima. Ona generalno radi dobro i ide od 1,2,3,4,5 a meni bi trebalo obratno 5,4,3,2,1
Moje pitanje je kako da preuredim kod da ide unazad brojanje?
Evo moj kod iz dreamweavera:
Code:
<?php require_once('Connections/baza3.php'); ?>
<?php
if (!function_exists("GetSQLValueString")) {
function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "")
{
if (PHP_VERSION < 6) {
$theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue;
}
$theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue);
switch ($theType) {
case "text":
$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
break;
case "long":
case "int":
$theValue = ($theValue != "") ? intval($theValue) : "NULL";
break;
case "double":
$theValue = ($theValue != "") ? doubleval($theValue) : "NULL";
break;
case "date":
$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
break;
case "defined":
$theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
break;
}
return $theValue;
}
}
$maxRows_Recordset1 = 1;
$pageNum_Recordset1 = 0;
if (isset($_GET['pageNum_Recordset1'])) {
$pageNum_Recordset1 = $_GET['pageNum_Recordset1'];
}
$startRow_Recordset1 = $pageNum_Recordset1 * $maxRows_Recordset1;
mysql_select_db($database_baza3, $baza3);
$query_Recordset1 = "SELECT SifraNovosti, Datum, Naslov, Podnaslov, KratakOpis, `Online` FROM novosti ORDER BY SifraNovosti DESC";
$query_limit_Recordset1 = sprintf("%s LIMIT %d, %d", $query_Recordset1, $startRow_Recordset1, $maxRows_Recordset1);
$Recordset1 = mysql_query($query_limit_Recordset1, $baza3) or die(mysql_error());
$row_Recordset1 = mysql_fetch_assoc($Recordset1);
if (isset($_GET['totalRows_Recordset1'])) {
$totalRows_Recordset1 = $_GET['totalRows_Recordset1'];
} else {
$all_Recordset1 = mysql_query($query_Recordset1);
$totalRows_Recordset1 = mysql_num_rows($all_Recordset1);
}
$totalPages_Recordset1 = ceil($totalRows_Recordset1/$maxRows_Recordset1)-1;
?>
<?php echo ($startRow_Recordset1 + 1) ?> to <?php echo min($startRow_Recordset1 + $maxRows_Recordset1, $totalRows_Recordset1) ?> of <?php echo $totalRows_Recordset1 ?>
Baza je krajnje jednostavna i ovo su polja:
CREATE TABLE Novosti
(SifraNovosti
Datum
Naslov
Podnaslov
KratakOpis
DetaljanOpis
Slika1
Slika2
Slika3
Online )