Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Zeilenfarbe von einer MSSQL DB ausgeben

Frage Entwicklung PHP

Mitglied: helmuthelmut2000

helmuthelmut2000 (Level 2) - Jetzt verbinden

01.11.2011 um 10:46 Uhr, 3601 Aufrufe, 7 Kommentare

Hallo,

Ich habe eine Frage zu meiner PHP-Seite.

Dort habe ich eine Tabelle wo ich mit Daten aus einer MSSQL DB ausgebe.
Da wechsle ich die Zeilenfarbe so:

$farbe[]="#FFFFFF"; Hintergrundfarbe 1
$farbe[]="#EEEEEE";
Hintergrundfarbe 2

Jetzt möchte ich aber bestimmte Zeilen mit bestimmten Farben ausgeben. Ich denke das ich die bestimmte
Farbe in der DB in einem Feld Speichere. Mit dem Namen Farbe. Wenn dann in dem Feld der Wert #FF0000
drin ist dann Sollte die Zeile in Rot erscheinen. Die anderen, die Keinen Wert in der DB haben sollten den
wechsel Hintergrund1 und Hintergrund2 machen.
Den Wert der Farbe in die DB speichern das ist mir Klar.

Aber wie mach ich das, das der Farbenwert aus der DB genommen wird und wenn keiner drin ist dann sollte der
Wechsel Hintergrund1 und 2 kommen?

Danke
Mitglied: nxclass
01.11.2011 um 10:56 Uhr
Wenn Du die Tabellen zB. mit LEFT JOIN verbindest, wird dir doch entweder der Farbwert oder NULL zurückgeliefert !? .. dann kannst du doch dein Ergebnisfeld mit isset() prüfen.
Bitte warten ..
Mitglied: helmuthelmut2000
03.11.2011 um 10:23 Uhr
Hallo,

Kannst du mir das mit dem LEFT JOIN etwas besser erklären?
Wie mach ich das denn Richtig?

Danke
Bitte warten ..
Mitglied: nxclass
03.11.2011 um 11:03 Uhr
Dazu benötige ich mehr Informationen wie deine Tabellen in der Datenbank aufgebaut sind.
Speziell wie Du die Information ablegst welche für die besondere Farbe verantwortlich ist. Evtl. reicht da auch ein zusätzliches Feld 'mark' mit den Werter 0 oder 1.
Momentan kann ich nur in die Glaskugel schauen.

LEFT JOIN
zB: FROM A LEFT JOIN B:
alle Werte aus A - und - alle Werte aus B oder NULL
Bitte warten ..
Mitglied: helmuthelmut2000
03.11.2011 um 13:40 Uhr
Hallo,

Ich hab in der Tabelle nur ein paar Spalten:

schluessel (PS, int, Nicht NULL)
kunde (nvarchar(255), NULL)
auftrag (nvarchar(255), NULL)
usw

Jetzt würde ich eine Spalte dazumachen

mark (nvarchar(255), NULL)
Dort ist dann bei keiner Frabe die NULL drin.
Dann sollte der wechsel kommen.
Und wenn ich die Farbe drin hab z.B. #FF0000
dann sollte die Zeile rot sein.
Bitte warten ..
Mitglied: nxclass
03.11.2011 um 14:34 Uhr
Dann sollte der wechsel kommen.
die Farbdarstellung ist eine Sache der Darstellung, finde ich, und sollte somit in CSS und HTML erledigt werden.

somit machst du einfach einen Farbwechsel und prüfst auf den Wert in 'mark'
01.
$data = meineMssqlQueryFuntion( 'SELECT * FROM [tabelle]' ); 
02.
foreach ($data as $i=>$row) { 
03.
 
04.
  $trCss = isset($row['mark']) ? $row['mark'] : ( ($i%2==0)? 'grau' : 'weis' );  // CSS Klasse oder ein Farbwert für die <TR> aus der Datenbank oder abwechselnd  
05.
 
06.
  // Aufbau der Tabellen Zeile 
07.
 
08.
}
.. so in etwa könnte man das machen.
Bitte warten ..
Mitglied: helmuthelmut2000
03.11.2011 um 20:45 Uhr
Hallo,

Bei deinem code muß der Farbwechsel in der CSS stehen.
Bei mir steht der am Anfang von der Tabelle, geht das dann auch?
Bitte warten ..
Mitglied: nxclass
04.11.2011 um 08:13 Uhr
geht das dann auch?
... ob Du nun mit Farbwerten oder CSS Klassen arbeitest ist ganz Dir überlassen. Aber ich finde man sollte den Code sauber halten und dazu gehört auch das trennen von CSS, HTML, JS und PHP.


... ich glaube in CSS3 gibt es eine einfache Möglichkeit so einen Farbwechsel umzusetzen
01.
tr:nth-child(odd)		{ background-color:#eee; } 
02.
tr:nth-child(even)		{ background-color:#fff; }
... ansonsten finde ich es nicht schlimm in jeder TR ein 'class' Attribute einzufügen.
Bitte warten ..
Ähnliche Inhalte
Visual Studio
gelöst CSharp Bereiche von Listen von Zahlen ausgeben (1)

Frage von Aicher1998 zum Thema Visual Studio ...

Batch & Shell
gelöst ZIP-Archive nach Dateien durchsuchen und Pfade ausgeben (33)

Frage von evinben zum Thema Batch & Shell ...

Sicherheits-Tools
Sicherheitstest von Passwörtern für ganze DB-Tabellen (1)

Tipp von gdconsult zum Thema Sicherheits-Tools ...

Datenbanken
gelöst MSSQL Datenkonvertierung 1 Zeile auf mehrere Zeilen - bitte um Tips (4)

Frage von highmoe zum Thema Datenbanken ...

Neue Wissensbeiträge
Google Android

Cyanogenmod alternative Downloadquelle

(5)

Tipp von Lochkartenstanzer zum Thema Google Android ...

Batch & Shell

Batch als Dienst bei Systemstart ohne Anmeldung ausführen

(5)

Tipp von tralveller zum Thema Batch & Shell ...

Sicherheits-Tools

Sicherheitstest von Passwörtern für ganze DB-Tabellen

(1)

Tipp von gdconsult zum Thema Sicherheits-Tools ...

Heiß diskutierte Inhalte
Server
gelöst Wie erkennen, dass nur deutsche IPs Zugang zu einer Website haben? (22)

Frage von Coreknabe zum Thema Server ...

Hardware
16-20 Port POE Switch mit VLAN (19)

Frage von thomasreischer zum Thema Hardware ...

Windows Server
gelöst Exchange HyperV Prozessorlast (19)

Frage von theoberlin zum Thema Windows Server ...

Windows Userverwaltung
Nicht Administratoren Installation von Software erlauben (14)

Frage von WinLiCLI zum Thema Windows Userverwaltung ...