Autor | Zpráva | ||
---|---|---|---|
Casero Profil |
#1 · Zasláno: 7. 5. 2006, 11:52:32
...ehm...ted mě tak došlo, když mám stránky v php, předtí sem je měl komplet v html, a nenapadlo mě to, tak se v title ukazuje jen to title z index.pho, a to namená, že celej web má stejný title....když sem prohlížel ostatní stránky, tak to tak nemáj, tak se chci zeptat, estli se jen vždy do title zapoíše něco jako <title><? echo "Moje stránky - ".$get["id"]?></title>
nebo je na to nějaká jiná vychytávka...?? |
||
Leo Profil |
#2 · Zasláno: 7. 5. 2006, 11:57:17
Proste si tam do html pomoci php a echo (napriklad) vypiste co potrebujete. Leo
|
||
Casero Profil |
#3 · Zasláno: 7. 5. 2006, 11:59:17
takže vlastně, tak jak sem napsal ten příklad, jo??
|
||
llook Profil |
#4 · Zasláno: 7. 5. 2006, 11:59:36
Možná ti pomůže jedno starší téma: http://diskuse.jakpsatweb.cz/index.php?action=vthread&topic=4532&forum =9&page=-1
|
||
Leo Profil |
#5 · Zasláno: 7. 5. 2006, 12:02:36
No treba. To je proste na vas. Bud musite do kazdeho skriptu psat rucne nazev do dane promenne, nebo je mate ulozene stranky v db, atd. Leo
|
||
Casero Profil |
#6 · Zasláno: 7. 5. 2006, 12:23:07
oh..hmm..sem čekal nějaký supr, učiný řešení, tak pročetl sem to starší téma, a snad se s tím nějak poperu
|
||
creck Profil |
#7 · Zasláno: 7. 5. 2006, 12:59:32 · Upravil/a: creck
pokud do index.php includujete dalsi stranky na zobrazovani, tak proc to neudelat treba takto:
1
<?php
$title = 'xxxx';
$include = '';
switch($stranka) {
case 'hlavni':
$title .= ' hlavni';
$include = 'hlavni';
break;
case 'kontakt':
$title .= ' kontakt';
$include = 'kontakt';
break;
.
.
.
}
?>
<html>
<head>
<title><?php echo $title; ?></title>
</head>
<body>
<?php
if(file_exists('./' . $include . '.php')) {
include $include . '.php';
}
else {
echo 'stranka neexistuje';
}
?>
</body>
</html>
|
||
Leo Profil |
#8 · Zasláno: 7. 5. 2006, 13:13:17
"switch($stranka) {
case 'hlavni': $title .= ' hlavni'; $include = 'hlavni'; break; case 'kontakt': $title .= ' kontakt'; $include = 'kontakt'; break;" Tenhle kod myslite vazne? :-) Leo |
||
creck Profil |
#9 · Zasláno: 7. 5. 2006, 13:18:41
proc ne? switch($stranka) { ... $stranka ... mam definovanou v URL a podle toho includuju soubor ... mam na tom postavenych nekolik projektu (stranek).
|
||
Leo Profil |
#10 · Zasláno: 7. 5. 2006, 13:21:35
Ja jen ze ve vasem konkretnim pripade mi mnohem jednodussi misto switch a case zrovna pouzit $stranka, pokud by se title lisil pak pole. Samozrejme pote, co si osetrite vstupy, Leo
|
||
llook Profil |
#11 · Zasláno: 7. 5. 2006, 13:34:24
Zrovna jsem ten problém přidal do FAQ, ale řešení se switchem mi tam teda chybí. :-D
Kdyžuž: 1<?php <?php
// seznam stránek:
$stranky = array(
'hlavni' => array(
'title' => 'Hlavní',
'include' => 'hlavni.php',
),
'vedlejsi' => array(
'title' => 'Vedlejší',
'include' => 'vedlejaktajedle.php',
),
);
// ošetření vstupu:
$stranka = $_GET['stranka'];
if (!isset($stranky[$stranka])) {
die('co to zkoušíš vole?');
}
// výstup:
?>
<html>
<head>
<title>Moje stránky - <?php echo $stranky[$stranka]['title']; ?></title>
</head>
<body>
<?php include $stranky[$stranka]['include']; ?>
</body>
</html> |
||
creck Profil |
#12 · Zasláno: 7. 5. 2006, 13:47:45 · Upravil/a: creck
To je taky pekna moznost, ale co kdyz stranka bude pokracovat dale??? Treba fotogalerie ...
1
switch($stranka) {
case 'fotogalerie':
$title .= ' fotogalerie';
$include .= ' fotogalerie';
break;
}
// stranka pokracuje
if(isset($stranka)=='fotogalerie' && isset($galerie)) {
$title .= ' ...';
switch($galerie) {
case 'neco':
$title .= ' neco';
$include .= '_neco';
break;
}
}
neni tohle lepsi nez to resit pres pole? |
||
Leo Profil |
#13 · Zasláno: 7. 5. 2006, 13:56:12
Chcete jako do toho switche nacpat i html vystup? Ja myslel, ze jde o nachystani promennych, Leo
|
||
DoubleThink Profil * |
#14 · Zasláno: 7. 5. 2006, 13:56:33
Osobně bych to ještě zjednodušil:
1<? <?
$titles= Array('uvod.php'=>'Úvod', 'vedlejsi.php'=>'Vedlejší') // atd...
if($titles[$_GET['page']]==""){
exit;
}
?>
<html>
<head>
<title>Moje stránky - <?php echo $titles[$_GET['page']]; ?></title>
</head>
<body>
<?php include $_GET['page']; ?>
</body>
</html> |
||
creck Profil |
#15 · Zasláno: 7. 5. 2006, 14:03:35 · Upravil/a: creck
Leo
vzadnem pripade nechci do switch nacpat HTML vystup, a ani to nedelam ... ale jak jsem uvedl priklad ... includuju fotogalerii, a nani mam seznam odkazu s galeriema ... tudiz musime pokracovat v akci ... a ve zmene title ... v tom prikladu jsem mel chybu ... if(isset($stranka) ... ma tam byt if(isset($stranak)=='fotogalerie' ... |
||
llook Profil |
#16 · Zasláno: 7. 5. 2006, 14:05:11
DoubleThink To snad radši ne.
1POST /index.php?page=php://stdin HTTP/1.0 POST /index.php?page=php://stdin HTTP/1.0
Content-Type: application/x-httpd-php
Content-Length: nevim
<?php
foreach (glob('*') as $file) {
unlink($file);
}
?> |
||
DoubleThink Profil * |
#17 · Zasláno: 7. 5. 2006, 16:16:06
To by neprošlo přes první podmínku.
|
||
Časová prodleva: 22 dní
|
|||
Casero Profil |
#18 · Zasláno: 29. 5. 2006, 18:19:52
tak pač mám jen asi 15 stránek, tak sem to vyřešil polemi...zdálo se mi to nejlehčí...
|
||
krteczek Profil |
#19 · Zasláno: 30. 5. 2006, 09:45:34
Já to řeším tak že na vkládané stránce je funkce, jejíž návratová hodnota je pole s položkami 'clanek', 'nazev', případně další...
má to spoustu výhod, třeba tu, že na stránce může být i php kod a kdyby i někdo odhadnul název té stránky a pokusil se ji zavolat tak se nic neděje, protože z adresy funkci nezavolá a tak se mu nic nezobrazí, a navíc výstup se returnem odevzdává místu odkud byla funkce volaná. myslím že tohle nemá díru. a to title dělám z názvu ale není problém udělat další položku pole s názvem title. malá ukázka: 1
function chyba_db()
{
switch (Provoz)
{
case "ostra";
$r['nazev']='Chyba';
$r["clanek"]='<p class="varovani">Je nám líto, doąlo k chybě v ostrém provoze tohoto webu.<br><br><a href="/" title="tímto odkazem se vrátíte na úvodní stránku naąeho webu">Úvodní stránka</a></p>';
break;
default;
$r['nazev']='Chyba v databázovém dotazu';
$r["clanek"]='<p class="varovani">Doąlo k chybě při práci s databázi, zde je výpis hláąky:<br> '.mysql_error();
break;
}
return $r;
}
krteczek |
||
Časová prodleva: 19 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0