K K@llen Medlem sedan mars 2003 2 667 inlägg Frågan 12 feb. 2005 13:53 #1 Tja,
På mina xhtml-sidor använder jag följande överst på sidorna:
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="sv" lang="sv">
Men rad 1 får PHP att balla ur. Varför?, antar att det har med <?xml... att göra som missförstås som <?php...
Kanske ska jag skriva på annat sätt eller hur löser jag detta?
Gislaved Medlem sedan nov. 2004 1 740 inlägg Kan du inte köra
<? echo "<?xml version=\\"1.0\\" encoding=\\"ISO-8859-1\\"?>"; ?>
K K@llen Medlem sedan mars 2003 2 667 inlägg Gislaved: Känns lite som en fullösning. ;)
Man kanske ska skippa första raden och bara köra:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="sv" xml:lang="sv">
K Kent.J Medlem sedan aug. 2001 153 inlägg Vet inte vad du kör för webserver och sådär. Men du kan bli striktare för php att man måste skriva <?php och inte bara <? för att "starta" phpmode.
Står säkert i inställningsfilen för php nånstans :)
Peeer Medlem sedan mars 2002 5 907 inlägg
Kent.J skrev:
Står säkert i inställningsfilen för php nånstans :)
i php.ini
; Allow the <? tag. Otherwise, only <?php and <script> tags are recognized.
; NOTE: Using short tags should be avoided when developing applications or
; libraries that are meant for redistribution, or deployment on PHP
; servers which are not under your control, because short tags may not
; be supported on the target server. For portable, redistributable code,
; be sure not to use short tags.
short_open_tag = On
Sätt den till off istället så slipper du problemet
K K@llen Medlem sedan mars 2003 2 667 inlägg short_open_tag är ju tyvärr något man inte kan sätta själv med ini_set() i de senare PHP-versionerna. :/
Peeer Medlem sedan mars 2002 5 907 inlägg Prova att skriva följande i .htaccess (om du har den möjligheten)
php_flag short_open_tag off
Annars kan du ju be webbhotellet sätta inställningen åt dig?
K K@llen Medlem sedan mars 2003 2 667 inlägg Tack Peeer, funkar fin fint! :D
X xPisc Medlem sedan juni 2005 4 inlägg Hade samma problem, nu funkar det men designen ryker totalt.
som XHTML (som det skall se ut):
och i PHP (så det inte skall se ut):
Det mörka med ränder är "headern" som ligger rätt i xhtml dokumentet men lägger sig bakom allt i php dokumentet.