Top-Themen

Aktuelle Themen (A bis Z)

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
GELÖST

Warum gehen die Variablen in der PHP CSS nicht?

Frage Entwicklung CSS

Mitglied: Jeeroy

Jeeroy (Level 1) - Jetzt verbinden

02.08.2011, aktualisiert 15:36 Uhr, 5592 Aufrufe, 10 Kommentare

Hey ich probiere eine php Datei zu erstellen, die als CSS Datei genommen wird, doch treten da dauernd Fehler auf.

Wichtig ist für mich, dass ich die Farben später aus der SQL Datenbank rauslesen kann, sodass ich sie in einem Backend immer ändern kann.
Deswegen wollte ich PHP in meiner CSS Datei haben, also eine PHP Datei, die als CSS Datei dient.

Eingelesen wird sie so und natürlich im <head> Bereich:
01.
<link rel="stylesheet" type="text/css" href="<? echo $pfad_css_long; ?>style.php" />
Meine style.php sieht derzeitig so aus:

01.
<?php 
02.
header("Content-type: text/css"); 
03.
$header_bgcolor = "#000"
04.
?> 
05.
06.
body { 
07.
            background-color: #eee; 
08.
09.
 
10.
 
11.
 
12.
.header { 
13.
            background-color: #555; 
14.
            border: 1px solid #000000; 
15.
16.
 
17.
		 
18.
.navi { 
19.
            background-color: <? echo $header_bgcolor; ?>; 
20.
            border: 1px solid #000000; 
21.
22.
 
Die CSS ist noch sehr kurz, zum testen.
Warum in Zeile 5 ein } ist....
Komischerweise wird dann der erste Abschnitt
01.
body { 
02.
            background-color: #eee; 
03.
}
auch mit Berücksichtigt, habe ich in Zeile 5 das } nicht, startet er erst nach body { }.

In Zeile 19 übernimmt er nicht die Farbe aus der Variable (#000), sondern lässt es weiß.

Ich versteh das nicht, habe schon viel im Internet geguckt und die haben das da genau so???

Bitte um Hilfe
Mitglied: ganymed
02.08.2011 um 16:31 Uhr
Hallo,

meiner bescheidenen Meinung nach wird deine style.php überhaupt durch den PHP Parser verarbeitet.
Der zweite Fehler aus meiner Sicht ist, dass du versuchst einen header zu senden.
Dieser ist bereits gesendet und zwar in deiner html Datei vor dem öffnenden <html> also lange vor dem einbinden deines stylesheets.

Was du aber machen kannst ist folgendes.

index.php
01.
<html> 
02.
<head>... 
03.
<?php include 'style.php';?> 
04.
...
style.php
01.
<style type="text/css"> 
02.
<!-- 
03.
... 
04.
.navi { 
05.
          background-color: <? echo $header_bgcolor; ?>;  
06.
          border: 1px solid #000000;  
07.
}  
08.
... 
09.
--> 
10.
</style>
Was ich jetzt noch nicht aufgenommen habe ist das füllen der Variable $header_bgcolor. Dafür stehn die ...
Bitte warten ..
Mitglied: Jeeroy
02.08.2011 um 16:38 Uhr
Hmm, ich habe gerade in diesem Augenblick rausbekommen, dass wenn ich in meiner verlinkung, also:

01.
<link rel="stylesheet" type="text/css" href="<? echo $pfad_css_long; ?>style.php" />
einfach das PhP wegnehme sprich:
01.
<link rel="stylesheet" type="text/css" href="css/style.php" />
Dann funktioniert es,...

Ich habe es überall so gelesen, dass es so mit den headern gemacht wird.
Bitte warten ..
Mitglied: Valume91
02.08.2011 um 16:46 Uhr
Moin Jeeroy

Wo hast du den das so gesehen?
Belehrt mich eines besseren aber so sieht das für mich schaurig aus (php datei so einzubinden; css in der php datei).
Deshalb hier mein Vorschlag:

1. Definiere dein CSS in der PHP Datei mit den HTML Style Tags (Wie das geht hier )
2. Binde die PHP Datei anschliessen per include ein.
In deinem Fall:
01.
<?php 
02.
include $pfad_css_long. 'style.php'
03.
?>
So ist es dir auch möglich an stelle der Farbe eine Variable einzusetzten.
Eventuell funktioniert es auch noch einfacher.

Ich hoffe dir behilflich gewesen zu sein.

MfG Valume
Bitte warten ..
Mitglied: Valume91
02.08.2011 um 16:49 Uhr
Hopala, Beitrag von ganymed war noch nicht das als ich zu schreiben begonnen habe ;)
Bitte warten ..
Mitglied: ganymed
02.08.2011 um 17:01 Uhr
Hab mal google gefragt und siehe da auch ich habe links dazu gefunden und somit was dazu gelernt.
href="css/style.php" soll wohl so funktionieren.
Ich selbst habe das noch nie so gemacht, weiß aber mit Sicherheit, dass meine angedeutete Lösung funktioniert.
Einzige Idee die ich jetzt noch habe ist, dass in deiner Variable $pfad_css_long nicht das drin steht was du dort erwartest.
Bitte warten ..
Mitglied: ganymed
02.08.2011 um 17:04 Uhr
Hallo Valume,
macht ja nichts mir geht das auch oft so.
Bitte warten ..
Mitglied: dog
02.08.2011 um 18:23 Uhr
Dieser ist bereits gesendet und zwar in deiner html Datei vor dem öffnenden <html> also lange vor dem einbinden deines stylesheets.

Bitte was?!

Der TO bindet die CSS-Datei über HTML-Links ein, dass sind zwei völlig verschiedene Requests!


<?php include 'style.php';?>

genauso die "Lösung" von Valume91

Nein, niemals!
Das würde das Stylesheet direkt ins HTML einbetten und das ist ein riesiger Performance-Fehler.

Es gibt übrigens für jeden Browser mittlerweile tolle Debug-Tools...
Bitte warten ..
Mitglied: Jeeroy
03.08.2011 um 07:52 Uhr
Guten Morgen,

@dog: Was für Debug-Tools könntest du empfehlen?

@Valume91 & ganymed: Hier steht das ganz gut Beschrieben:

http://www.webmasterpro.de/coding/article/php-in-css-dss-dynamic-style- ...


Trotzdem verwundert mich das sehr, dass es zu Problemen führte wenn ich
01.
<link rel="stylesheet" type="text/css" href="<? echo $pfad_css_long; ?>style.php" />
genommen habe.
Ich habe die Variable $pfad_css_long mal ausgeben lassen und sie beinhaltet:

D:/xampp/xampp/htdocs/minimax/mx_wcms/css/

Außerdem funktionierte die CSS ja zum Teil, Border und Farben wurden erkennt nur halt keine Variablen und es wurde erst ab der ersten } gearbeitet.

Mit dem Link funktioniert alles gut:
01.
<link rel="stylesheet" type="text/css" href="css/style.php" />

Liebe Grüße
Bitte warten ..
Mitglied: ganymed
03.08.2011 um 08:45 Uhr
Hallo,

eigentlich müsste da doch „http://localhost/minimax/mx_wcms/css/" “ , „./css/“ oder css/ verwendet werden.
Bitte warten ..
Mitglied: Jeeroy
03.08.2011 um 09:00 Uhr
*hehe

Da hast du wohl recht.
Da habe ich nicht bei der Pfadvergabe aufgepasst, danke ;)!

Stunden suchen wegen eines kleinen dummen Fehlers...
Bitte warten ..
Ähnliche Inhalte
PHP
Zeitbasiertes Bild auf Website mit PHP und CSS
Frage von peterhaPHP5 Kommentare

Moin Leute, ich bastele gerade mal eine Website. Bin soweit fertig. Muss nur noch einen automatischen Wechsel des Hintergrund-Bildes ...

PHP
PHP - Variable in anderes PHP-Skript mitgeben
gelöst Frage von Jens4everPHP3 Kommentare

Hi zusammen, könnt ihr mir kurz helfen? Ich habe folgendes vor: Ich möchte, dass beim Aufruf von "check1.php" eine ...

JavaScript
Übergabe einer php-Variable an JS
Frage von Rabauke84JavaScript

Hallo zusammen, ich hab eine Problem mit einer Übergabe einer Variable in php an JS. Dazu hab ich ein ...

PHP
MySQL in PHP mit Variablen
gelöst Frage von carl7nPHP10 Kommentare

Hallo, ich habe PHP-Grundkenntnisse, schaffe es aber nicht, nach meinen Vorstellungen ein paar kleine PHP-Scripts zusammen arbeiten zu lassen. ...

Neue Wissensbeiträge
Apple

IOS 11.2.1 stopft HomeKit-Remote-Lücke

Tipp von BassFishFox vor 1 TagApple

Das Update für iPhone, iPad und Apple TV soll die Fernsteuerung von Smart-Home-Geräten wieder in vollem Umfang ermöglichen. Apple ...

Windows 10

Windows 10 v1709 EN murkst bei den Regionseinstellungen

Tipp von DerWoWusste vor 1 TagWindows 10

Dieser kurze Tipp richtet sich an den kleinen Personenkreis, der Win10 v1709 EN-US frisch installiert und dabei die englische ...

Webbrowser

Kein Ton bei Firefox Quantum über RDP

Tipp von Moddry vor 1 TagWebbrowser

Hallo Kollegen! Hatte das Problem, dass der neue Firefox bei mir auf der Kiste keinen Ton hat, wenn ich ...

Internet

EU-DSGVO: WHOIS soll weniger Informationen liefern

Information von sabines vor 1 TagInternet4 Kommentare

Wegen der europäische Datenschutzgrundverordnung stehen die Prozesse um die Registrierung von Domains auf dem Prüfstand. Sollte die Forderungen umgesetzt ...

Heiß diskutierte Inhalte
Hardware
Kein Bild mit nur einer bestimmten Grafikkarten - Mainboard Konfiguration
gelöst Frage von bestelittHardware18 Kommentare

Hallo zusammen, ich hatte schon einmal eine ähnliche Frage gestellt. Damals hatte ich genau das gleiche Problem. Allerdings lies ...

Windows Server
RODC kann nicht aus Domäne entfernt werden
Frage von NilsvLehnWindows Server18 Kommentare

HAllo, ich arbeite in einem Universitätsnetzwerk mit 3 Standorten. Die Standorte haben alle ein ESXi Cluster und auf diesen ...

Hardware
Links klick bei Maus funktioniert nicht
gelöst Frage von Pablu23Hardware16 Kommentare

Hallo erstmal. Ich habe ein Problem mit meiner relativ alten maus jedoch denke ich nicht das es an der ...

Netzwerkmanagement
Mehrere Netzwerkadapter in einem PC zu einem Switch zusammenfügen
Frage von prodriveNetzwerkmanagement16 Kommentare

Hallo zusammen Vorweg, ich konnte schon einige IT-Probleme mit Hilfe dieses Forums lösen. Wirklich klasse hier! Doch für das ...