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, 3594 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 ..
Neuester Wissensbeitrag
Windows Update

Windows Update-Suche nach Win7 Neuinstallation wieder schneller

(1)

Erfahrungsbericht von the-buccaneer zum Thema Windows Update ...

Ähnliche Inhalte
Verschlüsselung & Zertifikate
Zugriff auf mySQL-DB mit ODBC und SSL (2)

Frage von Titan24 zum Thema Verschlüsselung & Zertifikate ...

Microsoft Office
Excel Nachfrage: Datum aus Spalte ausgeben (2)

Frage von PronMaster zum Thema Microsoft Office ...

Windows Server
gelöst Ms sql management studio 2012 kann auf 2012r2 die WSUS DB nicht finden (5)

Frage von XPFanUwe zum Thema Windows Server ...

Heiß diskutierte Inhalte
Hyper-V
gelöst Reiner Hyper- V Server oder lieber Rolle (21)

Frage von Winuser zum Thema Hyper-V ...

Exchange Server
Bestehende eMails autoamatisch weiterleiten (21)

Frage von metal-shot zum Thema Exchange Server ...

SAN, NAS, DAS
gelöst Synology Version 6.1 Probleme (18)

Frage von Hendrik2586 zum Thema SAN, NAS, DAS ...

Router & Routing
gelöst IP Kamera für drei unabhängige Netzwerke (16)

Frage von ProfessorZ zum Thema Router & Routing ...