Autor Zpráva
matesma
Profil *
Byla by možnost vytvořit jednu stránku například site.php ke které bych si připojil vlastní soubor například example.html, home.html aj. výsledná url by měla vypadat asi
takto http://stránka.cz/site.php?
=example a druhá http://stránka.cz/site.php?=home

Stránky example.html a home.html jsou v root/01/2012/ složce

děkuji
Keeehi
Profil
matesma:
Byla by možnost
Byla

<?php
switch($_GET['page']){
case "home":     include("root/01/2012/home.html"); break;
case "example":  include("root/01/2012/example.html"); break;
default :        include("root/01/2012/home.html");
}
?>

odkaz ale musí být http://stránka.cz/site.php?page=home
matesma
Profil *
Asi jsem se špatně vyjádřil, když přidám například do root/01/2012/ složky soubor v html podobě tak chci, aby ten odkaz fungoval tak, že si na konec odkazu http://stránka.cz/site.php?= přidám název jakýhokoliv souboru který je v té složce. Soubor site.php by měl fungovat jako přesměrování, který nebude mít to přesměrování určité na soubor ale jakýkoliv soubor který se v složce nachází. Přitom chci aby se při tom přesměrování zůstala adresa zachována ve tvaru http:/stránka.cz/site.php=NÁZEV_SOUBORU(.html)
jinak jste asi blízko
Fisir
Profil
[#3] matesma:
Do souboru site.php si vložíš tento kód:
<?php
$host  = "http://".$_SERVER['HTTP_HOST'];
header("Location: ".$host."/01/2012/".$GET_['page'].".html");
?>
Pamatuj, před tímhle skriptem nesmí být žádný výstup.
matesma
Profil *
<?php
switch($_GET['page']){
case "".$GET_
['page']."":     include
("stránka.cz/01/2012/".$GET_['page'].".html");
break;
default :        include
( "stránka.cz/01/2012/".$GET_['page'].".html");
}
?>

tak by to mělo vypadat? ten předchozí kód byl dobrý jen je potřeba vyměmit home.html, example.html za funkci použití jakýkoliv stránky. Pro příklad přidám do odkazu teststranka takže odkaz bude vypadat takto http://
stránka.cz/site.php?=teststranka a to znamená že byla použita root/01/2012/teststranka.html tak to potřebuji
Fisir
Profil
[#5] matesma:
Říkal jsi, že chceš přesměrování. Tohle je pouze vložení souboru do stránky.
Kódy by jsi mohl obalovat do odpovídajících značek.
Ne, máš to špatně. Proč nepoužiješ můj kód?
matesma
Profil *
Při použití toho posledního scriptu bude výsledný odkaz vypadat takto http://stránka.cz/site.php?page= ale kdyby to bylo bez toho page takže jen site.php?=
Keeehi
Profil
mod_rewrite
matesma
Profil *
Asi to bude ono, nebylo by to náhodou i přes php soubor? Protože tímto způsobem musím mít povolené přepisování na svém serveru a například na localhostu to nebude fungovat

jelikož mi na localhostu nefunguje přepisování, ptám se jestli to mám napsané správně?


# mujweb.cz/?=neco > mujweb.cz/01/2012/neco.html
RewriteEngine On
RewriteRule 01/2012/^(.*).html /?=$1

A pokud by byla možnost to mít přes php soubor uvítal bych to díky
matesma
Profil *
Keeehi ten prvni kód je dobrý jen nastavit

case "home": include ("root/01/2012/home.html")

home na jakýkoliv soubor, co jsem okoukal vaše návrhy tak by to mělo být .$GET_['page']
." je tak?
matesma
Profil *
Potřebuji upravit ten první kód od Keeehiho, vědel by někdo?
Fisir
Profil
matesma:
Věděl, ale bude to ta největší prasárna co jsem kdy viděl.
<?php
switch($_GET['page']){
   case $_GET['page']:
      include ("root/01/2012/".$_GET['page']);
      break;
};
?>
Ale jak říkám, je to hrůza. Pověz mi důvod, proč nepoužiješ kód z [#4]?
Sesmolil jsem to na mobilu, víš jak dlouho trvalo, než jsem napsal ty chlupaté závorky?!
Keeehi
Profil
Fisir:
to už rovnou můžeš nechat jen include ("root/01/2012/".$_GET['page']);

Jinak u tohoto kódu bude zábava už v tom případě, kdy page z URL zmizí.
Fisir
Profil
Keeehi:
Vždyť jsem mu napsal, že je to prasárna. Ale je to napsané takhle protože si to přál. Uvidíme, co ho nutí používat takto hnusný kód.
matesma
Profil *
Díky kluci za rady, ale pomohla mi osoba která to s tím umí. Čekal jsem profesionální podporu od jpw.cz ale lepší bude asi spolupracovat s člověkem co s tím experimentoval hezký den

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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

0