Autor Zpráva
El Pasadero
Profil *
Dobrý den,
mám problém s hezkými URL, na svém webu includuji obsah podle URL. Tzn mám URL ve tvaru www...cz/?page=uvod . A podle proměné se mi includuje obsah z soubor s názvem uvod.php. Nasadil jsem do .htaccess toto

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]+)/?$ ?page=$1

Při testu dostat se na adresu wwww...cz/uvod/ se mi bez problému načetl veškerý obsah jak základní šablony tak i souboru obsah.php. Nenačatli se mi ale styly ani javascript atd protože se to jeví jako že jsou v jiné složce, tedy v /uvod/ a v hlavní šabloně je klasická cesta typu

./css/
./js/

Pokud bych upravil hlavní šablonu na

../css
../js

Tak už by to fungovalo, ale přijde mi to velmi nepraktické a zároveň bych musel upravovat i veškeré cesty k obrázkům atd. Dělám něco špatně nebo se dát tento problém nějak rozumně vyřešit?

Php script includování

function navigation()
  {
   if ((string)$_REQUEST["page"]<>'')  
   $mujclanek=$_REQUEST["page"]; 
   else $mujclanek="main"; 
     if (is_file("./".$mujclanek.".htm")): 
       $nazevclanku=$mujclanek.".htm"; 
       require $nazevclanku; 
     elseif (is_file("./".$mujclanek.".php")):
       $nazevclanku=$mujclanek.".php";
       require $nazevclanku;
     else:
       require "main.php"; 
   endif;
  }

Hlavní šablona v principu vypadá takto

[pre]
<html>
<head>
xx
xx
</head>
<body>
<?navigation();?>
</body>
</html>

Díky za odpovědi :)
tiso
Profil
zmaž tie bodky na začiatku úplne a pôjde to
Martin2
Profil *
Jinými slovy, u webů s virtuální adresářovou strukturou je nutné používat absolutní adresování.
El Pasadero
Profil *
Které bodky myslíš? Styly mám definované ve tvaru

      <link href="css/bootstrap.css" rel="stylesheet" type="text/css" media="all">
      <link href="css/style.css" rel="stylesheet" type="text/css" media="all" />
Chamurappi
Profil
Reaguji na El Pasadera:
Viz kořenové adresy.


Reaguji na Martina2:
Ta adresářová struktura nemusí být virtuální, důležité je, že je proměnlivě hluboká.
Kořenové adresy jsou podle definice pořád relativní (protože hraje roli, odkud je odkazováno).
El Pasadero
Profil *
Aha už tomu rozumím díky moc za článek a za rady :)
Martin2
Profil *
Chamurappi:
Ta adresářová struktura nemusí být virtuální, důležité je, že je proměnlivě hluboká.
Tím bylo myšleno spíš běžná situace u frameworků, kdy pozice šablon není v žádné korelaci k výsledným adresám, které ani nemusí být dopředu známy.

Kořenové adresy jsou podle definice pořád relativní (protože hraje roli, odkud je odkazováno).
V rámci domény bych je za absolutní považoval.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: