Autor Zpráva
David45821
Profil *
Ahoj, zkouším předělat stránky do z html do php, ale hned na začátku jsem narazil na chybu. index vypadá takto:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1250">
<title>Moje první stránka</title>
<link rel="stylesheet" type="text/css" href="css/styl.css">
</head>

<body>

<div id="hlavni">
<div id="logo">Logo
</div>

<div id="menu">
<a href="?page=uvod">Úvod</a>
<a href="?page=prvni">První</a>
<a href="?page=druha">Druhý</a>
</div>

<div id="obsah">

<?php
$page=$_GET["page"];
$dir="clanky/";
$uvodni="uvod.php";
if ($page) {
if (file_exists($dir.$page.".php"))
include($dir.$page.".php");
else { include $dir."404.php"; }
}
else {
include ($dir.$uvodni);
}
?>

</div>
</div>

</body>
</html>

(Zatím to jen zkouším, podle příkladů)
Když dám zobrazit index.php, tak se mi objeví ztránka v pořádku, ale s chybovou hláškou:
Notice: Undefined index: page in C:\www\aliance-peklo\index.php on line 32

Ale jak zmáčknu na odkaz Úvod, hláška zmizí a vše je ok, nevíte někdo co s tím? Děkuji za odpovědi.
Alphard
Profil
<?php 
$page=isset($_GET["page"])?$_GET["page"]:"uvod"; 
$dir="clanky/"; 
if (file_exists($dir.$page.".php")) 
include($dir.$page.".php"); 
else { include $dir."404.php"; } 
?>
David45821
Profil *
Super, dekuju moc, už to funguje :-) Pářu se s tím už půl dne :-)
David45821
Profil *
Mám ještě jeden blbej dotaz, mám ted ještě problém s odkazama, podobnej jak ten minulej. script je:

<?php
echo '<a ';
if ($_GET['page']=='uvod')
echo 'class="active" ';
echo 'href="?page=uvod">Úvod</a>';
?>

Jenže nevím, jak mám nastavit podmínku, že když dám index.php, nezmáčknu teda žádný odkaz, aby se mi automaticky označil jako aktivní odkaz Úvod.
Jan Tvrdík
Profil
Místo
if ($_GET['page']=='uvod')
dej
if (!isset($_GET['page']) || $_GET['page'] == 'uvod')
.
David45821
Profil *
Děkuji, ještě prosím, jestli by jsi mi mohl napsat, jak potom bude vypadat každý další odkaz, který už nemá být aktivní dokud na něj nezmáčknu? S tím scriptem

<?php
echo '<a ';
if ($_GET['page']=='druha')
echo 'class="active" ';
echo 'href="?page=druha">Druhá</a>';
?>
mi to píše chybu, že nemám definovaný "page" - Notice: Undefined index: page in C:\www\aliance-peklo\index.php on line 34
href="?page=druha">Druhá
když spustím index, ale po zmáčknutí na odkaz Úvod se pak objeví bez chyby.
Pak už to snad bude všechno :-)
Jan Tvrdík
Profil
David45821:
místo
if ($_GET['page']=='druha')
dej
if (isset($_GET['page']) && $_GET['page'] == 'druha')
Alphard
Profil
<?php
echo '<a '; 
if (isset($_GET['page']) && $_GET['page']=='druha') 
  echo 'class="active" '; 
echo 'href="?page=druha">Druhá</a>'; 
?>


nebo stručněji
<?php
echo '<a ', (isset($_GET['page']) && $_GET['page']=='druha')?'class="active" ':'', 'href="?page=druha">Druhá</a>'; 
?>


taky by asi fungovalo potlačení chyby, ale já to nemám rád

// pozdě, moc jsem se rozepsal :-)
David45821
Profil *
Děkuju moc, už mi to konečně funguje tak jak má, děkuju.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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