Autor Zpráva
tomasz
Profil *
nemůžu dávat ukázky bo sem na mobilu tak se pokusím z hlavy
mam na stránkách vertikální menu.je tam momentálně asi 10položek ale neustále další přibývají a tak potom přepisuju každy php soubor,není to práce na hodinu ale chtěl bych si to usnadnit.
Ted používám normální odkazy <a href> napadla mě možnost žebych si vytvořil nový soubor třeba menu.php a tam nahážu všecky odkazy a do každé stránky bych přidal ten odkaz include aby mi to načítalo z souboru menu.php
všechno je ok,načítá to ok ale místo diakritických znamének(délky,háčky) mi to háže trojuhelníčky s otazníky,asi víte co. Mám kodování UTF-8 nebo tak nějak (sem no mobilu nevím přesně). Text veškerej ostatní je ok,pouze to přez include menu.php je s otazníkama.
Pokud zmením na dané stránce kodováni na WINDOWS-1250 (nebo tak nejak) tak menu mam ok ale zase ostatní text má trojuhelníky s otazníkama.takze taky nanic.
Co mám kde jak udělat aby vše bylo ok? V tom menu.php mám pouze ty odkazové řádky s názvy, nic víc
děkuju za radu
Taurus
Profil
Předpokládám, že tím kódováním UTF-8 myslíš meta-tag. To by znamenalo, že soubor menu.php píšeš v kódování windows-1250. Např. Pspad ho umí změnit. Nesmí se lišit kódování souboru a html.
tomasz
Profil *
takže menu.php je automaticky psán v windows-1250 jo?ja pspad nepoužívám,ale obyčejnej notepad2.
Co tedy napsat do menu.php aby to bylo ok?
tomasz
Profil *
zde je odkaz
www.skimosty.eu/slalom/menu_kontakt.php
a tohle sem tam vlozil
<?php include "menu.php"; ?>


ale nevim jak dat tomu menu.php to kodovani UTF-8
jak sem tam dal pouze toto
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

tak to nestacilo
Trejpa
Profil
tomasz:
Přesně jak píše Taurus, soubor menu.php je uložen v kódování windows-1250 a zbytek stránky v utf-8. Aby se ti stránka zobrazila správně celá, tak musí být i její části (v include) v jediném deklarovaném kódování. Změň tedy kódování souboru menu.php na utf-8. Program Notepad2 to umít (použité kódování zobrazuje ve stavovém řádku).
Trejpa
Profil
tomasz:
Teď jsem si všiml, že neumíš používat include.

Kódování každého souboru je věcí jeho uložení, ne metaznačky v něm.
Kódování celé stránky (obvykle) určuje jedna (!) metaznačka.

Používáš-li include, vkládáš do stránky kus kódu, ne celou další stránku. Výsledný kód má jen jednu hlavičku a jedno tělo. Jednotlivé soubory se v příslušném kódování ukládají, nedává se do nich další metaznačka, která na to nemá žádný vliv.

V programu Notepad2 bys ve stavovém řádku, kde nyní vidíš ANSI, měl vidět UTF-8. Přenastav si to v menu programu a soubor takto ulož.


Soubor se stránkou obsahuje celou stránku bez menu. Soubor menu.php obsahuje jen menu.

Soubor se stránkou:
<html><head>hlavička</head><body>
<?php include "menu.php"; ?>
zbytek stránky
</body></html>


Soubor menu.php:
<menu>
<li><a href=stranka1.php>1</a>
<li><a href=stranka2.php>2</a>
<li><a href=stranka3.php>3</a>
</menu>
tomasz
Profil *
díky moc

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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

0