mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Di 23.04.2024 21:49 Benutzername: Passwort: Auto-Login

Thema: MySQL PHP Felder der Abfrage identifizieren (parsen) vom 15.08.2006


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Programmierung -> MySQL PHP Felder der Abfrage identifizieren (parsen)
Autor Nachricht
Lydia.h
Threadersteller

Dabei seit: 10.06.2006
Ort: -
Alter: -
Geschlecht: Weiblich
Verfasst Di 15.08.2006 22:27
Titel

MySQL PHP Felder der Abfrage identifizieren (parsen)

Antworten mit Zitat Zum Seitenanfang

Hallo ihr Lieben,

ich habe ein Report-PHP-Script. Diesem Script übergebe ich einen SQL-Befehl, das Script baut die Tabelle.
Nun möchte ich eine Sortierfunktion einbauen.
Dafür durchlaufe ich die Feldnamen und baue daraus eine html-Select-Box. So weit, so gut Lächel

while($field = mysql_fetch_field($result)){
$selectOrderby .="<option value='".$field->name."'>".$field->name."</option>";
}

Jetzt stehen aber in dem $field->Name die Bezeichnungen der Felder nach dem AS:
Also: SELECT CONCAT (Nachnahme, ' ' , Vorname) AS Kollege FROM kollegen.

Nun kann man aber nicht nach dem 'Kollege' sortieren.

Nach 'Kollege' kann man aber kein ORDER BY ausführen.
Hat jemand einen Tipp für mich?

Lieben Gruß
Lydia.
  View user's profile Private Nachricht senden
Skyw4lker

Dabei seit: 30.08.2004
Ort: Bergisch Gladbach
Alter: 43
Geschlecht: Männlich
Verfasst Mi 16.08.2006 13:08
Titel

Antworten mit Zitat Zum Seitenanfang

Hmm, also bei mir geht das ORDER auf dem Alias.

Im Zweifelsfall kannst du aber auch

Code:
SELECT CONCAT(Nachnahme, ' ' , Vorname)  FROM kollegen ORDER BY  CONCAT(Nachnahme, ' ' , Vorname)


machen. Wichtig ist dabei nur, dass zwischen CONCAT und der offenen Klammer kein Space ist, sonst erkennt
er beim ORDER den Ausdruck nicht.

greetz

stef


Zuletzt bearbeitet von Skyw4lker am Mi 16.08.2006 13:12, insgesamt 2-mal bearbeitet
  View user's profile Private Nachricht senden
Anzeige
Anzeige
Lydia.h
Threadersteller

Dabei seit: 10.06.2006
Ort: -
Alter: -
Geschlecht: Weiblich
Verfasst Mi 16.08.2006 13:16
Titel

Antworten mit Zitat Zum Seitenanfang

Hallo Sky,
evtl. funktioniert das bei mir nicht mit dem Alias wegen der MySQL-Version 4, auf der die DB läuft.
Mein Provider kann die MySQL-Version nicht updaten, ich muss die DB kpl. neu machen.

Deine Alternative kann ich ja nicht anwenden, weil ich den 'CONCAT' nicht kenne. In $field->Name steht ja der AS.

Oder kann man den Bereich vor AS auch auslesen?

Liebe Grüße
Ly.
  View user's profile Private Nachricht senden
Skyw4lker

Dabei seit: 30.08.2004
Ort: Bergisch Gladbach
Alter: 43
Geschlecht: Männlich
Verfasst Mi 16.08.2006 13:27
Titel

Antworten mit Zitat Zum Seitenanfang

enthält dein SQL Select nur die CONCAT Klausel als Spalte?
Weil dann kannst du das auch über eine Zahl ansprechen.
In dem Fall 1

Also

Code:
SELECT CONCAT (Nachnahme, ' ' , Vorname) AS Kollege FROM kollegen ORDER BY 1
  View user's profile Private Nachricht senden
Lydia.h
Threadersteller

Dabei seit: 10.06.2006
Ort: -
Alter: -
Geschlecht: Weiblich
Verfasst Mi 16.08.2006 13:58
Titel

Antworten mit Zitat Zum Seitenanfang

Halllo Sky,

das Script erhält eine SELECT-Anweisung (kommt von woanders) und baut diesen dann dynamisch zu einer Tabelle.
Daher ist der SELECT natürlich immer anders, enthält mehrere Spalten, manchmal ein Group By oder auch nicht etc.

Aus den Feldern ($field->Name) erstelle ich dann eine html-Select-Box, damit der User wählen kann, wie er die Liste sortieren will.

Das man beim Order By eine Nummer angeben kann, wußte ich nicht.
Das heißt, ich kann im ORDER BY auch mehrer Nummern angeben, statt der Feld-Namen?
Wäre ja super.
Dann würde ich in dem option.value der html.select einfach die Nummer angeben.

Vielen Dank für den Tipp!!

Liebe Grüße
Ly.

PS: Bist Du der auf dem Foto links oder der im Absender-Stempel? Lächel
  View user's profile Private Nachricht senden
Skyw4lker

Dabei seit: 30.08.2004
Ort: Bergisch Gladbach
Alter: 43
Geschlecht: Männlich
Verfasst Mi 16.08.2006 14:00
Titel

Antworten mit Zitat Zum Seitenanfang

Ich bin der auf dem Foto links, der Typ in meiner Signatur ist ein Charakter aus einer
meiner Lieblingsserien Lächel
  View user's profile Private Nachricht senden
labrar

Dabei seit: 04.04.2006
Ort: -
Alter: 49
Geschlecht: Männlich
Verfasst Mi 16.08.2006 22:43
Titel

Antworten mit Zitat Zum Seitenanfang

Wie sieht denn deine Tabellenstruktur aus?

Liest sich so als hättest du keine eindeutigen Bezeichner
  View user's profile Private Nachricht senden
 
Ähnliche Themen PHP Abfrage ob alle Felder ausgefüllt wurden
(php-mysql) übergabe von formulardaten und abfrage m. mysql
[mysql] einzelne Felder exportieren. wie?
MySql abfrage
MySQL Abfrage
[php+mysql] abfrage von x bis y
Neues Thema eröffnen   Neue Antwort erstellen
MGi Foren-Übersicht -> Programmierung


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst an Umfragen in diesem Forum nicht mitmachen.