Seitenfunktion Arrayproblem

Nepheus

Erfahrenes Mitglied
Zuletzt bearbeitet:
ja das klappt jetzt, das ganze script funktioniert aber irgendwie nicht richtig, wenn ihr mal gucken wollt:
http://www.fahrrad-warscheid.de/html/gaestebuch.php


PHP:
function createPages($input, $perpage) {
    global $page, $_SERVER;
    if ($input == 0)
        die("createPages(<b>\$input = $input</b>, \$perpage = $perpage");
    if ($input <= $perpage)
        return "« <b>1</b> »";
    if (!$page || $page < 1) {
        $page = 1;
    }
    $pages = ceil($input / $perpage);
    $html = "";
    if ($page > 1) {
        $html .= "<a href=\"".$_SERVER["PHP_SELF"]."?page=".($page-1)."\"><span class=Stil3>«</span></a> ";
    } else {
        $html .= "« ";
    }
    for($i = 1; $i <= $pages; $i++) {
        if ($i == $page) {
            $html .= "<b>".$i."</b> ";
        } else {
            $html .= "<a href=\"".$_SERVER["PHP_SELF"]."?page=".$i."\"><span class=Stil3>".$i."</span></a> ";
        }
    }
    if ($page <= $pages-1) {
        $html .= "<a href=\"".$_SERVER["PHP_SELF"]."?page=".($page+1)."><span class=Stil3>»</span></a> ";
    } else {
        $html .= "» ";
    }
    return $html;
}

function limitSQL($perpage) {
    global $page;
    if (!$page || $page < 1) {
        $page = 1;
    }
    $min = ($page - 1) * $perpage;
    $max = $min + $perpage;
    $out = array($min,$max);
    return $out;
}

$perpage = 2;
PHP:
  $limit = limitSQL($perpage);
  $limit = implode($limit);
  $query = "SELECT * FROM $table ORDER BY datum DESC LIMIT $limit";
das 2te funktioniert, ich glaube der fehler liegt irgendwie in der ersten funktion
 
Zuletzt bearbeitet:
Ich hatte eher Folgendes im Hinterkopf:
PHP:
$query = '
	SELECT
	        *
	  FROM
	        `'.$table.'`
	  ORDER BY
	        `datum` DESC
	  LIMIT
	        '.implode(',', $limit).'
	';
 
Das klappt ja jetzt soweit, nur wenn ich auf seite 2 klicke müsste er doch wieder in die Funktion limitsql gehen und der variable $limit die neuen werte für die ausgabe geben, nur er zeit immer die gleichen an, wisst ihr nicht wo das problem liegt?
 
Zurück