Ankündigung

Einklappen
Keine Ankündigung bisher.

CSS-Datei parsen durch htaccess funktioniert nur local

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • CSS-Datei parsen durch htaccess funktioniert nur local

    Tach

    Ich lass eine CSS Datei in einem Ordner css parsen. Dazu hab ich eine htaccess mit dem Inhalt

    Code:
    AddHandler application/x-httpd-php css
    Local funktioniert es auch einwandfrei, jedoch nicht auf meinem Server / Webspace. Kann das an den Einstellungen liegen? Muss ich da was an der Config ändern?

    Hier die PHP-info

    Hab echt kein Schimmer warum es nicht tut Hoffe ihr könnt helfen.

    MFG

    // EDIT //
    Oder gibts alternativen?

  • #2
    Manche Anbieter erlauben das Nachkonfigurieren per HTAccess einfach nicht. Frag doch mal beim Hoster.

    Kommentar


    • #3
      Liegt das dann am Apache? Weil is Firmenserver und kann das ändern

      Kommentar


      • #4
        habs jetzt mal mit ner php datei versucht und nem header
        -> header('Content-Type: text/css');

        Jedoch kann man da nicht auf Variablen im Link oder auf die Session zugreifen. Muss ich wohl oder übel wieder meine alte Lösung nehmen, und einfach ne normale PHP Datei nehmen und diese includen per require

        Kommentar


        • #5
          Warum?
          Meine CSS-Dateien sehen teilweise so aus:

          Code:
          <?php
          require_once '../includes/inc.constants.php'; // wichtige Pfadkonstanten holen
          header('Content-type: text/css');
          ?>
          body {
            background: url(<?php print CURRENT_STYLE; ?>background.gif); // nur ein Beispiel
          }
          Und warum solltest du in einer PHP-Datei nicht auf Variablen oder Sessions zugreifen können? Wenn dein Versuch war

          Code:
          <?php
          $stylePfad = "style/";
          ?>
          <link href="style.css" .. />
          ..
          style.css (PHP parsed)
          Code:
          body {
            background: url(<?php print $stylePfad; ?>background.gif);
          }
          Das ist ja klar, da style.css ja in eniem eigene Prozess gestartet wird und <link ../> ja nur per HTML includet und nicht wie das PHP-require/include auf PHP-Ebene.

          Kommentar


          • #6
            Aber warum erkennt der bei mir keine Session Variable oder eine Variable aus der URL?

            Code:
            <?php
                if(isset($_SESSION['firma'])) {
                    $sql = "SELECT
                                *
                            FROM
                                firma
                            WHERE
                                firma_id = '". $_SESSION['firma'] ."';";   
                    $result = mysql_query($sql) OR die(mysql_error());
                    $row = mysql_fetch_assoc($result);
                    $color = $row['farbe'];
                } elseif(isset($_GET['f'])) {
                    $sql = "SELECT
                                *
                            FROM
                                firma
                            WHERE
                                firma_id = '". $_GET['f'] ."';";   
                    $result = mysql_query($sql) OR die(mysql_error());
                    $row = mysql_fetch_assoc($result);
                    $color = $row['farbe'];
                } else {
                    $color = "#F28A00";
                }
                header('Content-Type: text/css');
            ?>
            
            body { 
            	margin-top:		0;
            	margin-bottom:		0;
            	margin-left:		0;
            	margin-right:		0;
            	background:		#FFFFFF;
            }
            
            ...
            
            .message {
            	color:			<?php echo $color; ?>;
            }
            Der nimmt immer den else Teil obwohl die Session steht (in der index.php klappt es).

            die CSS-PHP Datei main.php rufe ich wie folgt auf

            Code:
              <link rel=stylesheet type="text/css" href="css/main.php">


            ::: EDIT :::
            PHP Hightlighten geht mal wieder nicht

            PHP-Code:
            Test 

            Kommentar


            • #7
              session_start() vergessen ^^

              Kommentar


              • #8
                dacht ich mir auch erst, aber nachdem ich session_start() eintrage, geht gar kein CSS mehr


                ::: EDIT :::
                ach, musste die config auch noch reinladen in die main.php (css-datei). DAnn kann er klar nix machen weil die fehler von der main.php werden in der index.php nicht angezeigt. Hab mal direkt angesprochen die main.php mim Browser und kam dann DB Fehler geht nun

                danke dir

                Kommentar


                • #9
                  Wie sieht deine komplette CSS-Datei aus und was ergibt print_r($_SESSION) darin?

                  Edit: grml k

                  Kommentar

                  Lädt...
                  X