Um eventuelle Inkonsistenzen zu verhindern sollte man evtl. in der
$orders_history_query das
ORDER BY orders_id DESC, date_added
ändern in
ORDER BY orders_id DESC, date_added ASC
Auf eine Default-Sortierung (ASC oder DESC) ist bei mySQL kein Verlass.
@FräuleinGarn
[...]
Zusätzlich ist mir vor einer Weile schonmal folgender mysteriöser Fehler aufgefallen. Das Icon wird einer Bestellung weiter oben zugeordnet (Bestellung 24) die eigentlich keinen Kommentar enthält und bei der Bestellung 20, die diesen Kommentar enthält, wird nichts angezeigt. Bei 19 und 23 das gleiche. Ab der 25 stimmts und auch wenn ich jetzt eine neue Bestellung mit Kommentar anlege. Im produktiven Shop funktioniert es auch seit jeher.
[...]
Das kann ich mir nur dann vorstellen wenn es für eine Bestellung aus der Tabelle
orders keinen Eintrag in der Tabelle
orders_status_history gibt, was eigtl. nicht sein darf und kann.
Mir fällt mom. auch keine Query ein die das abfangen könnte, zumindest nicht mit der
IN() Funktion.
Für jede
orders_id eine einzelne Query in einem Loop aufzurufen, womit man dann das Problem abfangen könnte, wäre Overdrive und perfomance-killing.
Gruß,
noRiddle
*NACHTRAG*
Man kann das ganze auch noch mit mehr Javascript so gestalten, daß die richtigen Kommentare definitiv den richtigen Bestellungen zugeordnet werden.
(Momentan habe ich's ja so gemacht, daß sich auf die gleiche Anzahl der Bestellungen in der Query für das Order-Listing und der Query für die Comments verlassen wird und sie werden schlicht nach Index zugeordnet.)
Wenn man jeder table row einer Bestellung eine
class="ord-BESTELLNUMMER" und jedem Kommentar-HTML ein
data-ord="ord-BESTELLNUMMER" zuordnen würde könnte man die Kommentare eindeutig zuordnen ohne sich auf die Anzahl und Reihenfolge verlasen zu müssen.