Hallo Gemeinde, hoffe Ihr könnt mir helfen. Komme im Moment nicht so recht weiter und bin so langsam am verzweifeln. Mein Problem liegt in dem Aufruf einer Tabelle und deren Sortierung. Ich rufe per Link ein PHP-Skript auf, die index.php:
welche die list.php aufruft. In dieser list.php ist das Ausgabeformat der Tabelle hinterlegt sowie die Möglichkeit durch Anklicken der Tabellenüberschrift die Tabelle entsprechend auf- bzw. absteigend zu sortieren
[Der Beginn meiner list.php]
[Der Link für die Sortierung in der Tabellenüberschrift]
und die Function
Das ganze funktioniert auch soweit schon teilweise (Tabelle wird ausgegeben, durch anklicken der Tabellenüberschrift läßt sich diese auf-/absteigend sortieren), nur möchte ich jetzt, das, wenn der Besucher die Ausgabeseite der Tabelle aufruft (also per Link die index.php aufruft), diese als erstes immer sortiert nach dem Feld Kunde und aufsteigend ausgegeben wird. Derzeit wird die Tabelle z.B. aufsteigend sortiert ausgegeben, klicke ich nochmal den Link an wird die Tabelle absteigend sortiert ausgegeben bei nochmaligem anklicken wieder aufsteigend usw.
Wie kann ich dies realisieren ? Ich habe im Link schon alles mögliche mitgegeben, z.B. ...index.php?order=Kunde&sort=asc
oder in der index.php den Link entsprechend angepaßt
...list.php?order=Kunde&sort=asc - leider ohne Erfolg.
Hoffe nun das mir einer von euch weiterhelfen kann. Hierfür im voraus schon einmal vielen Dank.
PHP-Code:
<?php
header("Location: list.php");
?>
[Der Beginn meiner list.php]
PHP-Code:
<?php
include('general/header.inc');
require_once('general/general.php');
if (isset($_GET['order'])) $myData->setOrderingInfo($_GET['order']);
if (isset($_GET['page'])) $myData->actPageNr = $_GET['page'];
if (isset($_POST['formdata'])) $myData->getWhereClause($_POST['formdata']);
$maxRecord = 999;
$sqlbase = "SELECT * FROM anbindungen WHERE Depot=7000".$myData->getOrderString();
$sql = $sqlbase."LIMIT ".(($myData->actPageNr-1)*$maxRecord).",".$maxRecord;
$Result = $MyDb->f_ExecuteSql($sql);
$ResultRowNr = $MyDb->f_GetSelectedRows($Result);
$ResultTotalRow = $MyDb->f_ExecuteSql($sqlbase);
$totalRows = $MyDb->f_GetSelectedRows($ResultTotalRow);
?>
<html>
<head>
<title>Anbindungen</title>
<link rel="stylesheet" href="../../css/linkformatblanko.css" type="text/css">
...
PHP-Code:
<a href="list.php?order=Depot">Depot<?php $myData->setOrderImage("Depot"); ?></a>
PHP-Code:
<?php
class usersession{
var $orderField;
var $orderDirection;
var $orderCounter=0;
var $whereStr='';
var $filterdata;
var $limit;
var $lastSite;
var $actPageNr = 1;
var $counter=0;
function setOrderingInfo($field=""){
if ($field == $this->orderField) $this->orderCounter++;
if ($this->orderCounter<3) {
$this->orderField = $field;
$this->orderDirection = ($this->orderDirection == 'ASC') ? "DESC":"ASC";
$this->orderCounter++;
}
else {
$this->orderCounter = 0;
$this->orderField = "";
$this->orderDirection = "";
}
}
function setOrderImage($field){
if ($field == $this->orderField){
if ($this->orderDirection == "ASC") echo '<img src="style/up.gif" \>';
if ($this->orderDirection == "DESC") echo '<img src="style/down.gif" \>';
else echo "";
}
else {
echo "";
}
}
function getOrderString(){
if (isset($this->orderField) && $this->orderField != "") {
return " ORDER BY $this->orderField $this->orderDirection ";
}
}
}
?>
Wie kann ich dies realisieren ? Ich habe im Link schon alles mögliche mitgegeben, z.B. ...index.php?order=Kunde&sort=asc
oder in der index.php den Link entsprechend angepaßt
...list.php?order=Kunde&sort=asc - leider ohne Erfolg.
Hoffe nun das mir einer von euch weiterhelfen kann. Hierfür im voraus schon einmal vielen Dank.
Kommentar