2017-05-26 2 views
0

Ich konnte nicht ganz finden, was ich suchte, indem ich googling oder stack overflow suchte, also werde ich es einfach fragen.PHP Countdown SQL Zeilen von Total Zeilen bis 0

$reply_sql = mysqli_query($successconnect, "SELECT * FROM replies WHERE reply_thread = '" . $reply_thread_id . "' ORDER BY reply_date DESC LIMIT $cur, $max"); 
$numbb = ((20 - (20 * $page)) * -1); 
while($reply_row = mysqli_fetch_assoc($reply_sql)) { 
$numbb++; 

Dies führt dazu, dass jede Antwortzeile von 1 bis zur Gesamtanzahl der Zeilen zählt. Das ist alles in Ordnung, wenn ich meine Antworten ASC bestellen möchte.

Ich möchte es von der gesamten Anzahl der Zeilen auf 0 gehen. Ich stelle mir vor, das ist alles Mathematik, aber ich bin wirklich schlecht. Und vielleicht gibt es einen einfacheren Weg, dies zu tun.

$numbb--; 

Das weiß ich zu, aber ich versuchte, viele Variationen von numbb $ und kann nicht ganz einen Weg finden, um zum Beispiel zu machen:

23 (Total Replies) 1 (Page 1) makes it count from 23 down to 3 
23 (Total Replies) 2 (Page 2) makes it count from 3 down to 1 
+1

Bitte zeigen Sie Ihre SQL-Anweisung. – toonice

+0

@toonice Völlig unnötig, aber hinzugefügt. – user3113607

+0

Warum ordnen Sie Ihre Datensätze nicht mit dem Primärschlüssel der Nachricht oder einem anderen Feld mit sequenziellen Eigenschaften mit SQL an? Sie können eine PHP-Anweisung "if" verwenden, um Ihr SQL zu erstellen, wobei "DESC" oder "ASC" entsprechend hinzugefügt werden. – toonice

Antwort

0

Es dauerte eine Weile, verschiedene Kombinationen zu versuchen, , aber ich musste den ursprünglichen Code um 23 oder replycount verschieben, um das Ergebnis zu erhalten, das ich brauche.

$numbb = ((($replycount + 20) - (20 * $page)) + 1); 
while($reply_row = mysqli_fetch_assoc($reply_sql)) { 
$numbb--; 

23 + 20 = 43 - 20 * 1 = 23 + 1 = 24, die zeigt, wie numbb $ 23 mit der ersten Reihe. Und dann 23 + 20 = 43 - 20 * 2 = 3 + 1 = 4, die als 3 auf Seite 2 angezeigt wird.