Autor Zpráva
Black_Sun
Profil
cau vsichni uz nekolikrat jsem na internetovych strankach narazil na adresy výše uvedeného typu a chtel bych se zeptat jak se vytvareji
diky
Hugo
Profil
Udelas si system, ktery bude generovat stranky podle toho co zadas do parametru url, napr.
index.php?strana=uvod
ti vygeneruje stranu s uvodem. Nejjednodussi zpusob jak toho dosahnout je:
<?php
include ('hlavicka.php');
include ($_GET['strana'].'.html');
include ('paticka.php');
?>

kde promenna $_GET['strana'] obsahuje parametr z URL.
Unli
Profil
strana = p ve tvém případě.

Unli
La_ToRaNTe
Profil
to Hugo:

Nejjednodussi zpusob jak toho dosahnout je:
<?php
include ('hlavicka.php');
include ($_GET['strana'].'.html');
include ('paticka.php');
?>


---------------------------------
To bych moc nedělal, pokud se ti na stránku dostane člověk co si s tím bude chtít hrát, dosadí třeba index.php?strana=xxx tak ti tam hned skočí červeně, že nelze includovat soubor "xxx.html" ....
Na jedny stránce jsem takhle získal heslo k MySQl databázi a různý zdrojový kódy. ;)
Stačí si pak domyslet jak to funguje.
krteczek
Profil
<?php

//adresa typu index.php?clanek=nazev-clanku
//tahle funkce zobrazuje články z určeného adresáře( tady je shodný se skriptem index.php )
//její výhoda je v tom že nemusíte nikam přidávat názvy dalších skriptů
//ale jak již zde bylo napsáno, je třeba si zabezpečit skripty, které nechceme
//aby se zobrazily nepovolaným osobám

function ukazclanek ()
{
if ((string)$_REQUEST["clanek"]<>'')
{
$mujclanek=$_REQUEST["clanek"];
}
else
{
$mujclanek="uvod";
}
if (is_file("./".$mujclanek.".htm"))
{
$nazevclanku=$mujclanek.".htm";
require $nazevclanku;
}
elseif (is_file("./".$mujclanek.".php"))
{
if(("./".$mujclanek.".php")=="index.php")
{
require "notfound.php";//ochrana proti opětovnému vložení index.php do stránky
}
else
{
$nazevclanku=$mujclanek.".php";
require $nazevclanku;
}
}
else
{
$nazevclanku=$mujclanek.".htm";
require "notfound.php";
}
}


include ('hlavicka.php');
ukazclanek();
include ('paticka.php');
?>

jiný způsob zobrazování článků může vpadat napříkald takhe:


if(!empty($_REQUEST['naz']))
{
switch($_REQUEST['naz'])
{
case "onecem";
include("./onecem.php");
break;

case "cosi";
include("./cosi-sem-vlozime.php");
break;

//takhle je možno pokračovat dále, v případě že ani jedna volba nesouhlasí
//bude vybrána defaultní volba

default;
header("location: adminovo.php?clanek=notfound");
break;
}
}

druhý způsob je poněkud náročnější na pozornost tvůrce, a je třeba každou stránku zvlášť přidat

krteczek
Toto téma je uzamčeno. Odpověď nelze zaslat.

0