Paging og dato-sortering
HeyJeg har et problem med at få paging til at virke på en side med udtræk fra MySQL, og samtidig driller dato-sorteringen. Koden ser således ud:
--------------------------------------------
<?php
mysql_connect("xxxxx", "xxxxxx", "xxxxx") or die (mysql_error());
mysql_select_db("xxxxxx") or die (mysql_error());
$pr_side = "50";
if (!isset($s)) {
$s = "0";
}
$query = mysql_query("SELECT Id, Titel, Dato, Artist, Year, SmallPic, DATE_FORMAT(Dato, '%d/%m/%Y') AS Dag FROM v2_sang WHERE Dato <= CURDATE() ORDER BY Dato, Artist, Titel DESC limit $s,$pr_side") or die(mysql_error());
echo "<table width=100% align=left border=0>";
while($row = mysql_fetch_array($query)){
extract($row);
echo "<tr><td rowspan=2 valign=top width=200><a href='http://ultimative-80ere.dk/v2/content/musik/sang.php?Id=$row[Id]'>$SmallPic</a></td>\n";
echo "<td valign=top background='../../gfx/maingfx/bckg_header11.jpg'><p><em>$Dag</em></p></td>\n";
echo "</tr>\n";
echo "<tr><td><p><br><strong>$Artist:</strong><br><a href='http://ultimative-80ere.dk/v2/content/musik/sang.php?Id=$row[Id]'><em>$Titel</em></a><br>($Year)</p></td>\n";
echo "</tr>\n";
}
echo "</table>";
$g_total = mysql_query("select count(id) as total from v2_sang WHERE Dato <= CURDATE()") or die(mysql_error());
$total = mysql_result($g_total,0);
echo"<br>";
if ($s >= $pr_side) {
$previous_s = $s-$pr_side;
echo "<a href='listsang2.php?s=$previous_s class='mere'>Forrige</a> ";
}
$page = 1;
for($start=0; $total > $start; $start=$start+$pr_side){
if ($start != $s) {
echo "<a href='listsang2.php?s=$start class='mere'>$page</a> ";
} else {
echo "$page ";
}
$page++;
}
if ($total > $s+$pr_side) {
$next_s = $s+$pr_side;
echo "<a href='listsang2.php?s=$next_s class='mere'>Næste</a>";
}
?>
-------------------------------------------------
Se selve siden her: http://ultimative-80ere.dk/v2/content/musik/listsang2.php
Jeg er ingen ørn til PHP, men bruger dette script uden fejl andetsteds på mit site - se her: http://ultimative-80ere.dk/v2/content/shared/arkiv.php?News=Yes
Hvorfor kan jeg ikke få paging'en frem på ovenstående eksempel? Der skal være 50 emner pr. side...
Problem nr. 2:
Dato-sorteringen er helt ad H... til. Rækkefølgen skal være den senest nye sang først (dvs. dags dato) og så ellers bagud (i går, i forgårs osv.). Ja, jeg ved godt at sorteringen i koden herover er helt hen i vejret, men har prøvet med utallige andre varianter, alle med et ubrugeligt resultat.
Nogen der har nogle gode, brugbare idéer til en amatør som mig?