sortieren

  • Hi Leute,


    leider nichts dergleichen gefunden.
    Mein Problem.
    Ich habe eine PHP Datei, welche eine Tabelle von 25 Einträgen ausgibt.
    Nun kann ich eine dropdown box aufmachen und mir alle 25-50 Einträge anzeigen lassen.


    Ich will nun alle sortieren.
    Ich habe es geschafft, dass ich jeweils immer die 25 Einträge sortieren kann.
    Ich möchte aber, dass wenn ich z.b. die Spalte Kunde sortieren will, dass alle Kunden die mit A anfangen auch obenstehen.
    Sprich die ersten ca. 200 Einträge mit A auch nach oben sortiert werden und dann das B usw.
    Meine ersten 25 Einträge (also wenn ich 0-25 anklicke) bestehen aus mehreren Anfangsbuchstaben. Da ist auch ein F dabei.. welche ja viiel weiter unten sein müsste.


    Ich hoffe ihr versteht meine Sachlage :D
    Gibt es da irgendeine Möglichkeit?

  • LIMIT 25 ^^



    was macht den das ASC?


    ich glaube das prob liegt vll. auch daran das er die ersten 25 Ergebnisse auslassen will. d.h. er will nach name sortieren wie du schon den code geliefert hast lauras, dann aber erst ab der 26 zeile die werte auslesen

  • Bei mir sortiere ich automatisch die Subdomains (einfach nur ein Spaltenname von mir) mit dem Mysql Befehl und das klappt auch.


    Jetzt klicke ich auf einen anderen <thead> z.b. Kunden und der sortiert die ersten 25 Einträge.
    Das script soll aber alle Daten vergleichen und diese dann sortieren. Wie das script es ja bis jetzt mit der Subdomain macht.

  • mm immer noch nicht ganz verstanden glaub ich


    du hast die Tabelle jetzt schon und php ist sozusagen abgeschlossen.
    und bei dir sortier er jetzt nur eine spalte oder was?


    ich vsrstehe nicht genau was du meinst liegt aber vll schon an der späten stunde^^

  • Haha kein Problem. Das Problem zu beschreiben ist ziemlich kompliziert :p


    Mit PHP generiere ich eine Tabelle mit 25 Einträgen und 4 Spalten.
    Dann habe ich ein Drobdown menü wo ich die nächsten 25 Einträge anzeigen lassen kann, diese werden mit einem reload der Seite wieder mit PHP generiert und ausgegeben.
    Alle Einträge werden vorab mit einem SQL Befehl sortiert.
    Das Problem ist nun, ich möchte mit Ajax eine andere Sortierung vornehmen. Dann wird aber logischer weiße nur die 25 Einträge sortiert und auf der nächsten Seite gibt es noch Einträge, welche aber auch "nach oben" rutschen müssten, wenn ich sortieren klicke.


    Ich verstehe das Problem. Da ich erst mit dem Klicken auf die nächste Seite die nächsten 25 Einträge generieren lasse.


    Mir ist eingefallen, dass ich doch bestimmt mit PHP eine IF anweisung machen kann, wo drin steht.
    Wenn "Kunde" in der Checkbox ausgewählt wurde, mach SELECT ..... Order by Kunde.


    Könnte das funktionieren?

  • Klar kannst du das. Du kannst ja mit Ajax einfach auf ein Script zugreifen, was quasi eine komplett neue SQL-Abfrage macht. Ob das Performance.-technisch günstig ist musst du testen ;)


    Roland: ASC bedeutet aufsteigend, das Gegenteil ist DESC. ASC kann man theoretisch auch weglassen (glaube ich), weil es default ist, aber ich schreibe es gerne dazu zur Übersichtlichkeit

  • Klar kannst du das. Du kannst ja mit Ajax einfach auf ein Script zugreifen, was quasi eine komplett neue SQL-Abfrage macht. Ob das Performance.-technisch günstig ist musst du testen ;)


    Mir fällt gerade ein, gibt es nicht Probleme wenn ich die sql Abfrage in eine function stecken bzw. dort auch noch If Anweisung, welche auf Checkboxen prüfen, .. Gibt es da nicht Probleme? Ich dachte eine mySQL Abfrage wird nur auf dem Server behandelt. Dann gäbs doch wieder einen Reload oder nicht?!^^


    Ich versuch das heute mal und ggf. gebe ich euch mal den Code. Dann ist es wohl besser zu verstehen.

  • Habe es nun geschafft, das ich in der alert(data) den mySQL Code habe.



    SQL
    if(isset($_POST["rangeform"]))
    		{
    			$sql = "SELECT * FROM user_clients WHERE activ=1 and delete_status=0 ORDER BY ".								$_POST["headline"]." ASC LIMIT $range1,$range2";echo $sql;}
    		else
    		{
    		$sql = "SELECT * FROM user_clients WHERE activ=1 and delete_status=0 ORDER BY subdomain ASC LIMIT $range1,$range2";	
    		}			
    		$result = mysql_query($sql, $db);
    		echo var_dump($result);


    PHP
    $erg .= '<table cellpadding="0" cellspacing="0" id="sortieren" class="uebersicht"><thead>';
    			$erg .= '<tr><th></th><th id="subdomain">Subdomain</th><th id="firma">Kunde</th><th style="text-align:center">Pro Version</th><th style="text-align:center">Branding</th><th style="text-align:center">Speicher</th></tr></thead>';


    Habe diesen zuvor durch klicken auf Subdomain oder Kunde geändert.
    Ich will nun, dass wenn ich auf Subdomain klicke sortiert wird. Sprich die Spalte subdomain.
    Da habe ich den mySQL Befehl ja in dem alert data.
    Aber ich weiß gerade nicht mehr wie ich weiter vorran gehe :/

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!