Autor Zpráva
Anonymní
Profil *
zdravím, mám problém s include. Odkazy mi funguji, ale když jdu na index.php, tak se z toho stane nekonečnej skript a index se mi na stranku vklada furt dokola...

a to ať je to takhle:
$stranka = $_GET["stranka"];

if ($stranka == "kontakty") {include "kontakty.php";}
elseif ($stranka == "ceny") {include "ceny.php";}
elseif ($stranka == "") {include "index.php";}


nebo takhle:
switch($_GET['stranka']) {
case "kontakty": include "kontakty.php"; break;
case "ceny": include "ceny.php"; break;
default: include "index.php"; break;


i takhle:
if (isset($_GET['stranka']))  {
if (is_file(str_replace("/", "", $_GET['stranka']).".php")) 
$soubor = $_GET['stranka'].".php";
include $soubor;
}
else $soubor = 'index.php';



... menu.php je neco takovyho
<a href="index.php">Úvod</a>
<a href="index.php?stranka=kontakty">kontakty</a>
<a href="index.php?stranka=ceny">ceny</a> 


díky za pomoc
Wroxman
Profil
Zkus vždycky include "./soubor.php";
Jan Tvrdík
Profil
index se mi na stranku vklada furt dokola
Tak ho prostě nevkládej:
$stranka = $_GET["stranka"];

if ($stranka == "kontakty") {include "kontakty.php";}
elseif ($stranka == "ceny") {include "ceny.php";}
elseif ($stranka == "") {/*include "index.php";*/}
panvicka
Profil
jasné, ale když tam někdo zadá ručně třeba
index.php?stranka=blablba
tak bych ráda, aby ho to hodilo na index.php

treba timhle radkem

default: include "index.php"; break;
Jan Tvrdík
Profil
switch ($_GET['stranka']) {
	case "kontakty": include "kontakty.php"; break;
	case "ceny": include "ceny.php"; break;
	case "":
	case "index": break;
	default: include "index.php"; break;
}
panvicka
Profil
I ten tvuj kód mi tam pri
 index?stranka=dsfsdfs
vklada index porad dokola.....

zkusila sem napsat
if (isset($_GET['stranka']))  {
if (is_file(str_replace("/", "", $_GET['stranka']).".php")) 
$soubor = $_GET['stranka'].".php";


if (!file_exists($soubor)) {
include ("index.php");
}
else {
include $soubor;
}

}


ale ten dela to samy... gr

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

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

0