Wie am besten nachhaltig nach Name sortieren?

http://php-de.github.io/jumpto/leitfaden/
http://php-de.github.io/jumpto/sql/

Mal bitte in dieser Reihenfolge durchgehen und eventuelle Ausgaben und Fehler dann hier posten, wenn du sie nicht selber lösen kannst.
Na, das nenn' ich mal wieder eine typische Antwort vom Typus "Helffaul/Maulheld". Hauptsache man hat was gesagt, egal was und wenn's RTFM ist. Drückst Du einem hilfebedürftigen Menschen dann auch ein Buch, Dein Handy oder einen Flyer in die Hand?
 
Hi,

wie sieht dein Code aktuell aus? Ich würde übrigens nicht per Kreuzprodukt die Tabellen zusammenführen (TABELLE_1, TABELLE_2) sondern explizit per JOIN Anweisung. Sollte performanter sein und ist imho auch einfacher:

SQL:
SELECT
  *
FROM
    teamwork_kunden_uis_kategorien AS ka
  INNER JOIN
    teamwork_kunden_uis AS ku
  ON
    ka.id = ku.katid
ORDER BY
  teamwork_kunden_uis_kategorien.name;

Grüße,
BK
 
@Bratkartoffel Das Joinen der beiden Tabelle funktioniert eigentlich 1a. Mein Problem liegt eher bei der Erfassung und Ausgabe, sodass unter den einzelnen Kategorien (wo auch Einträge für vorhanden sind!!!) die dazugehörigen Einträge ausgegeben werden. Mein Code oben mit den while-Schleifen hat ja leider nicht geklappt.

Im Moment habe ich einen Testcode aufgebaut in dem ich es nicht so elegant gelöst habe. Erst bau ich eine Query zur Kategorien-Tabelle auf. Dann liste ich diese alle auf (geb dem Kat.-Namen einen <h3>-Tag mit einer Klasse, und für die Einträge als Liste ein <ul>). Jetzt überprüfe ich, ob für die jeweilige Kategorie Einträge vorhanden sind. Wenn ja, dann werden sie aufgelistet, wenn nein, dann werden der <h3>-Tag und die Liste (<ul>) anhand der Klasse mit jQuery einfach versteckt. Nicht schön aber selten.
PHP:
$UICategories = mysql_query("SELECT * FROM kategorien ORDER BY name") or die(mysql_error());

while($UICategory = mysql_fetch_assoc($UICategories))
{
    echo'<h3 class="CustomerInterfaces'.$UICategory['id'].'">'.$UICategory['name'].'</h3>';
    echo'<ul class="CustomerInterfaces'.$UICategory['id'].'">';

    $UIs = mysql_query("SELECT * FROM eintraege WHERE katid='".$UICategory['id']."' ORDER BY servername") or die(mysql_error());

    if(mysql_num_rows($UIs) > 0)
    {
        while($UI = mysql_fetch_assoc($UIs))
        {
            echo'<li>'.$UI['servername'].'</li>';
        }
    }
    else
    {
        echo'<script type="text/javascript">$(function(){ $(".CustomerInterfaces'.$UICategory['id'].'").hide(); }</script>';
    }

    echo'</ul>';
}
 
Punkt 1:
Na, das nenn' ich mal wieder eine typische Antwort
vom Typus "Helffaul/Maulheld". Hauptsache man hat was gesagt, egal was und wenn's RTFM ist.
Wenn du die Hinweise im ersten Post überhaupt (außer deinen eigenen) beachtet hättest hättest wäre die
Antwort so auch nicht gekommen. Aber da du scheinbar mit einem einzelnen Satz du dem Punkt nichts
anfangen konntest hast du jetzt etas Genaueres zum Lesen.
Deine Reaktion ist ziemlich ungebracht.

Punkt 2: Kann es sein, dass der Code im Post 6 nicht gekürzt ist?
Dann hast du eine Abfrage in der Schleifen einfach vergessen und noch dazu die falsche Variable verwendet.
Oder du nimmst an, dass man über ein Queryergebnis beliebig oft drüberschleifen kann (was nicht der Fall ist).
 

Neue Beiträge

Zurück