die letzten 5 rückwerts ?

Cindy Biest

Grünschnabel
Hallo ich möchte gerne eine Tabelle erstellen wo die letzten 5 einträge aus der Datenbank kommen leider schaffe ich nur die ersten 5 und dann auch in falscher reihen folge

die kommen von id 1 bis id 5 aber ich möchte gerne id ENDE bis hin 5 vor ende

hier das was ich bisher gemacht habe
PHP:
<?php require_once('Connections/mySQLD.php'); ?>
<?php
if (!function_exists("GetSQLValueString")) {
function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "") 
{
  $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 = 5;
$pageNum_Recordset1 = 0;
if (isset($_GET['pageNum_Recordset1'])) {
  $pageNum_Recordset1 = $_GET['pageNum_Recordset1'];
}
$startRow_Recordset1 = $pageNum_Recordset1 * $maxRows_Recordset1;

mysql_select_db($database_botsmall, $botsmall);
$query_Recordset1 = "SELECT news.topic FROM news ORDER BY news.id";
$query_limit_Recordset1 = sprintf("%s LIMIT %d, %d", $query_Recordset1, $startRow_Recordset1, $maxRows_Recordset1);
$Recordset1 = mysql_query($query_limit_Recordset1, $botsmall) 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;
?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Unbenanntes Dokument</title>
</head>

<body>
<table border="0">
  <tr>
    <td>topic</td>
  </tr>
  <?php do { ?>
    <tr>
      <td><?php echo $row_Recordset1['topic']; ?></td>
    </tr>
    <?php } while ($row_Recordset1 = mysql_fetch_assoc($Recordset1)); ?>
</table>
</body>
</html>
<?php
mysql_free_result($Recordset1);
?>
 
Hi,

dann gib doch beim Sortieren den Parameter DESC mit an:

PHP:
"SELECT news.topic FROM news ORDER BY news.id DESC";

Beim Sortieren kannst Du mit ASC (Standard wenn nichts angegeben) aufsteigend sortieren oder aber mit DESC absteigend.

Gruß Thomas
 
Oh mein gott,

ich wusste doch das es so simpel ist und hatte eigendlich vor gestern nacht befor ich schlafen gegangen bin das mit DESC auszuprobieren.

War spät für mich....
 
Zurück