Problem z inicjalizacja "dynamicznego" pliku CSS

0

Mam problem z zainstalowaniem stylu na swojej stronie domowej. Cala strona jest oparta o automatyczne przeskalowywanie siebie samej (system podobny do np. www.komputronik.pl), problem w tym, ze jest ona zbudowana w standardzie XHTML 1.1 :-) .

Rozkład katalogów:

index.php
[data]
sitemap.xml
[engine]
image.php
style.php
[engine\styles]
main.css.php
[engine\templates]
body.tpl.php
header.tpl.php
[flash]
display.swf
logo.swf
menu.swf
[icon]
icon.ico
[images]
bottom.jpg
cloud1.jpg
cloud2.jpg
sign.jpg
top.jpg

index.php

<?php
if (!isset($_GET['x']) || !isset($_GET['y']))
{
    echo
    ("
        <script language=\"JavaScript\">
        var x=screen.width;
        var y=screen.height;
        window.location.href=\"{$_SERVER['PHP_SELF']}?x=\"+x+\"&y=\"+y;
        </script>
    ");
}
else
{
function Resize($Size)
{
    $NewX = (int)$_GET['x'];
    $NewY = (int)$_GET['y'];
    $OldX = 1024;
    $OldY = 768;
    $ScaleX = $NewX/$OldX;
    $ScaleY = $NewY/$OldY;

    if ($ScaleX > $ScaleY)
    {
        $Factor = $ScaleY;
    }
    else
    {
        $Factor = $ScaleX;
    }

    $Answer = $Factor * $Size;

    echo((int)$Answer);
}

include('engine/templates/header.tpl.php');
include('engine/templates/body.tpl.php');
}
?>

style.php

<?php
if (isset($_GET['kind']))
{
    $Kind=$_GET['kind'];
}
else
{
    break;
}

Header('Content_type: text/css');

switch($Kind)
{
    case 'script':
    echo(include('styles/script.css.php'));
    break;

    case 'error':
    echo(include('styles/error.css.php'));
    break;

    case 'main':
    echo(include('styles/main.css.php'));
    break;
}
?>

main.css.php

a:link, a:visited, a:hover {
    text-decoration:none;
    color:#B2B2B2;
    background-color: white;
}
body, td {
    margin-bottom: 0px;
    margin-left: 0px;
    margin-top: 0px;
    margin-right: 0px;
    background-color: white;
    font-family: Arial, Helvetica, sans-serif;
    color: #b2b2b2;
}
h1 {
    font-weight: bold;
    font-size: <? Resize(14); ?>px;
}
table {
    width: 100%;
    border: 0px;
    padding: 0px;
    border-spacing: 0px;
}
.master-table {
    vertical-align: middle;
    text-align: center;
}
.logo-table {
    height: <? Resize(110); ?>px;
}
.menu-table {
    height: <? Resize(49); ?>px;
}
.border-table {
    height: <? Resize(56); ?>px;
}
.content-table {
    height: <? Resize(260); ?>px;
}
.copyright-table {
    height: <? Resize(30); ?>px;
}
.cloud1-td {
    background-image: url(../image.php?name=cloud1.jpg&x=<? Resize(233); ?>&y=<? Resize(110); ?>);
    background-repeat: no-repeat;
    width: <? Resize(233); ?>px;
    white-space: nowrap;
}
.cloud2-td {
    background-image: url(../image.php?name=cloud2.jpg&x=<? Resize(233); ?>&y=<? Resize(49); ?>);
    background-repeat: no-repeat;
    width: <? Resize(233); ?>px;
    white-space: nowrap;
}
.top-td {
    background-image: url(../image.php?name=top.jpg&x=<? Resize(610); ?>&y=<? Resize(56); ?>);
    background-repeat: no-repeat;
    width: <? Resize(610); ?>px;
    white-space: nowrap;
}
.bottom-td {
    background-image: url(../image.php?name=bottom.jpg&x=<? Resize(610); ?>&y=<? Resize(56); ?>);
    background-repeat: no-repeat;
    width: <? Resize(610); ?>px;
    white-space: nowrap;
}
.logo-td, .menu-td {
    width: <? Resize(610); ?>px;
    white-space: nowrap;
    vertical-align: middle;
    text-align: right;
}
.content-td {
    width: <? Resize(610); ?>px;
    white-space: nowrap;
    vertical-align: top;
    text-align: justify;
    font-size: <? Resize(14); ?>px;
}
.w233-td {
    width: <? Resize(233); ?>px;
    white-space: nowrap;
    vertical-align: middle;
    text-align: center;
}
#w610-td {
    width: <? Resize(610); ?>px;
    white-space: nowrap;
    vertical-align: middle;
    text-align: center;
    font-size: <? Resize(10); ?>px;
}
.sign-img {
    width: <? Resize(20); ?>px;
    height: <? Resize(20); ?>px;
}

header.tpl.php

<?php
echo
'
<?xml version="1.0" encoding="iso-8859-2" ?>
<?xml-stylesheet type="text/css" href="engine/style.php?kind=main&x='.$_GET['x'].'&y='.$_GET['y'].'"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pl">
  <head>
    <meta http-equiv="Content-type" content="text/html; charset=iso-8859-2" />
    <meta http-equiv="Reply-to" content="[email protected]" />
    <meta http-equiv="Content-Language" content="pl" />
    <meta http-equiv="Page-Enter" content="RevealTrans(Duration=3,Transition=12)" />
    <meta name="Keywords" content="archiwizacja, archiwizacje, bezpieczenstwo, czyszczenie, dane, danych, demontaz, domowa, domowych, doradztwo, dostosowywanie, firma, firmowych, instalacja, instalacje, klient, klienta, klientów, komfort, komfortowe, komputer, komputerowe, komputerów, komputery, konfiguracja, konfiguracji, konfigurowanie, konserwacja, konserwacje, mala, malych, malym, modernizacja, modernizowanie, montaz, naprawa, naprawach, naprawy, obsluga, obslugiwanie, operacyjnego, operacyjny, oprogramowania, oprogramowanie, osobiste, osobisty, osobistych, PC, podzespolów, podzespolu, Poznan, Poznanskie, profesjonalna, profesjonalne, profesjonalnie, rozbudowa, rozbudowywanie, serwis, serwisant, serwisanta, serwisie, serwisu, sieci, sieciowe, siec, sprawdzanie, sprawdzenie, sprzedawanie, sprzedaz, Swarzedz, Swarzedzu, system, systemu, testowanie, usluga, uslugi, usterek, usterka, usterki, utrzymanie, wielkopolska, wielkopolskie" />
    <meta name="Description" content="Strona firmowa &quot;Reliable&quot;. Specjalizujemy sie w naprawach i konserwacji wszelkiego rodzaju sprzetu komputerowego, a takze w tworzeniu, obsludze, utrzymaniu i zabezpieczaniu sieci komputerowych." />
    <meta name="Author" content="Reliable" />
    <meta name="Robots" content="ALL" />
    <link rel="Shortcut Icon" href="icon/icon.ico" />
    <title>
      Reliable - Profesjonalne Uslugi Komputerowe
    </title>
    <link rel="stylesheet" type="text/css" href="engine/style.php?kind=main&x='.$_GET['x'].'&y='.$_GET['y'].'" />
'
?>

body.tpl.php

  <body>
    <table class="master-table">
        <tr>
            <td>
                <table class="logo-table">
                    <tr>
                        <td>&nbsp;</td>
                        <td class="cloud1-td">&nbsp;</td>
                        <td class="logo-td">
                            <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" width="<? Resize(460); ?>" height="<? Resize(90); ?>" id="logo" align="center">
                                <param name="allowScriptAccess" value="sameDomain" />
                                <param name="movie" value="flash/logo.swf" />
                                <param name="menu" value="false" />
                                <param name="loop" value="false" />
                                <param name="quality" value="high" />
                                <param name="bgcolor" value="#ffffff" />
                                <embed src="flash/logo.swf" menu="false" loop="false" quality="high" bgcolor="#ffffff" width="<? Resize(460); ?>" height="<? Resize(90); ?>" name="logo" align="center" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />
                            </object>
                        </td>
                        <td>&nbsp;</td>
                    </tr>
                </table>
                <table class="menu-table">
                    <tr>
                        <td>&nbsp;</td>
                        <td class="cloud2-td">&nbsp;</td>
                        <!-- Menu Begin //-->
                        <td class="menu-td">
                            <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" width="<? Resize(460); ?>" height="<? Resize(49); ?>" id="menu" align="right">
                                <param name="allowScriptAccess" value="sameDomain" />
                                <param name="movie" value="flash/menu.swf" />
                                <param name="menu" value="false" />
                                <param name="quality" value="high" />
                                <param name="bgcolor" value="#ffffff" />
                                <embed src="flash/menu.swf" menu="false" quality="high" bgcolor="#ffffff" width="<? Resize(460); ?>" height="<? Resize(49); ?>" name="menu" align="right" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />
                            </object>
                        </td>
                        <!-- Menu End //-->
                        <td>&nbsp;</td>
                    </tr>
                </table>
                <table class=".border-table">
                    <tr>
                        <td>&nbsp;</td>
                        <td class="w233-td">
                        <td class="top-td">&nbsp;</td>
                        <td>&nbsp;</td>
                    </tr>
                </table>
                <table class="content-table">
                    <tr>
                        <td>&nbsp;</td>
                        <td class="w233-td">
                            <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" width="<? Resize(233); ?>" height="<? Resize(260); ?>" id="display" align="middle">
                                <param name="allowScriptAccess" value="sameDomain" />
                                <param name="movie" value="flash/display.swf" />
                                <param name="menu" value="false" />
                                <param name="loop" value="false" />
                                <param name="quality" value="high" />
                                <param name="bgcolor" value="#ffffff" />
                                <embed src="flash/display.swf" menu="false" loop="false" quality="high" bgcolor="#ffffff" width="<? Resize(233); ?>" height="<? Resize(260); ?>" name="display" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />
                            </object>
                        </td>
                        <td class="content-td">
                        <!-- Content Begin //-->
                            <blockquote>
                                <b>
                                    Wstep
                                </b>
                                <p>
                                    xxxxxxx
                                </p>
                                <p>
                                    xxxxxxx
                                </p>
                                <p>
                                    xxxxxxx
                                </p>
                            </blockquote>
                        <!-- Content End //-->
                        </td>
                        <td>&nbsp;</td>
                    </tr>
                </table>
                <table class=".border-table">
                    <tr>
                        <td>&nbsp;</td>
                        <td class="w233-td">&nbsp;</td>
                        <td class="bottom-td">&nbsp;</td>
                        <td>&nbsp;</td>
                    </tr>
                </table>
                <table class="copyright-table">
                    <tr>
                        <td>&nbsp;</td>
                        <td class="w233-td">&nbsp;</td>
                        <td class="w610-td">
                            Copyrigt by Reliable&copy;.&nbsp;
                            <img class="sign-img" src="images/sign.jpg">
                            &nbsp;
                            <a href="data/sitemap.xml">
                                Site Map
                            </a>
                        </td>
                        <td>&nbsp;</td>
                    </tr>
                </table>
            </td>
        </tr>
    </table>
  </body>
</html>
0

no ale z czym problem, co ci nie działa ? bo w treści widzę tylko zdanie:

problem w tym, ze jest ona zbudowana w standardzie XHTML 1.1 :).

jak ci to sprawia trudność to cofnij się do jakiejś wersji z którą dasz radę i sie nie ciesz

a kod straszny i strasznie musi obciążać serwer ...

0

No fakt nie napisałem, az tak przejzyscie o co chodzi ;-P Problem dokladnie tkwi w tym, ze jak to w jakimkolwiek standardzie XHTML, wszystkie parametry wyswietlania obrazu umieszczone sa w stylach, w moim przypadku w osobnym pliku CSS. Plik ten generowany jest u mnie automatycznie na podstawie swojego $_GET. Problem w tym, ze zadna przegladarka nie inicjalizuje go do kodu strony. Natomiast jezeli probuje w przegladarce wpisac engine/style.php?kind=main&x=1024&y=768 To wyswietla mi sie styl w poprawnej formie stworzony poprawnie. Mam nadzieje, ze nie zakrecilem zabardzo. A co do tego, ze kod jest wolny, to zgadzam sie, to jest dopiero wersja Alpha ;-P

0

Troche nakombinowalem sie z tym kodem i zauwazylem jedna rzecz, dolaczany styl musi miec rozszerzenie ".css", a nie tak jak w moim przypadku ".php". Probowałem to wyminąc dodając pustą zmienna na samym koncu $_GET tak, aby w kodzie usyskac:

<link rel="stylesheet" type="text/css" href="engine/style.php?kind=main&x='.$_GET['x'].'&y='.$_GET['y'].'&.css" />
zamiast
<link rel="stylesheet" type="text/css" href="engine/style.php?kind=main&x='.$_GET['x'].'&y='.$_GET['y'].'" />

ale to tez nie pomoglo, paser nie dal sie oszukac.

Ma ktos pomysl jak to obejsc?

0

Problem rozwiazalem, skladalo sie na niego kilka drobiazgow, ale przede wszystkim jeden glowny, mianowicie nie mialo znaczenie rozszerzenie styly, a literowka w kodzie zwiazana z naglowkiem:
Header('Content_type: text/css'); zamiast Header('Content-type: text/css');

;-P

co do strony to wersja alpha przerodzila sie w beta i czas generowania na moim serwerze ok. 30 milionowych sekundy, takze juz chyba nie mozna narzekac na kod, no chyba, ze ktos uwaze uzycie biblioteki gd, jako tak owe spowolnienie. Pozdrawiam

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0