Gå til innhold

MIME for XHTML + PHP?


Anbefalte innlegg

Jeg sitter og leker meg litt med XHTML og har greid å lage en skikkelig XHTML-side (fått parser-error også :p ). Jeg har brukt AddType application/xhtml+xml .php i .htaccess, men da fungerer ikke PHP. Jeg har prøvd å skrive AddType application/x-httpd-php .php i samme .htaccess-fil og på et høyere nivå, men PHP blir ikke aktivert.

 

Hvordan får jeg da både XHTML- og PHP-MIME inn på samme linje?

Endret av endrebjorsvik
Lenke til kommentar
Videoannonse
Annonse
Jeg sitter og leker meg litt med XHTML og har greid å lage en skikkelig XHTML-side (fått parser-error også :p ). Jeg har brukt AddType application/xhtml+xml .php i .htaccess, men da fungerer ikke PHP. Jeg har prøvd å skrive AddType application/x-httpd-php .php i samme .htaccess-fil og på et høyere nivå, men PHP blir ikke aktivert.

 

Hvordan får jeg da både XHTML- og PHP-MIME inn på samme linje?

5969398[/snapback]

 

prøver du å aktivere php gjennom htaccess? Eller xhtml? Sistnevnte trenger du neppe aktivere og førstnevnte kan jeg aldri tenke meg kan aktiveres gjennom htaccess.

Lenke til kommentar
Jeg sitter og leker meg litt med XHTML og har greid å lage en skikkelig XHTML-side (fått parser-error også :p ). Jeg har brukt AddType application/xhtml+xml .php i .htaccess, men da fungerer ikke PHP. Jeg har prøvd å skrive AddType application/x-httpd-php .php i samme .htaccess-fil og på et høyere nivå, men PHP blir ikke aktivert.

 

Hvordan får jeg da både XHTML- og PHP-MIME inn på samme linje?

5969398[/snapback]

 

prøver du å aktivere php gjennom htaccess? Eller xhtml? Sistnevnte trenger du neppe aktivere og førstnevnte kan jeg aldri tenke meg kan aktiveres gjennom htaccess.

5969776[/snapback]

For at XHTML skal sendes med rikig MIME-type, må man enten definere den i .htaccess eller i en PHP-header i en hver enkelt PHP-fil.

Men når jeg setter MIME-typen på .php-filenen til application/xhtml+xml parses ikke PHP-koden. Det jeg da vil er at begge skal aktiveres.

 

Og PHP kan faktisk aktiveres gjennom .htaccess. F.eks slik at .htm-filer parses som PHP. ;)

Endret av endrebjorsvik
Lenke til kommentar

bare sende ut at content-type er xhtml+xml med php det.

 

<?php 
 if (stristr($_SERVER[HTTP_ACCEPT], "application/xhtml+xml")) {
 header("Content-Type: application/xhtml+xml; charset=iso-8859-1"); }
 else { header("Content-Type: text/html; charset=iso-8859-1"); }
?>

 

Sendes helt først i fila. (sjekke om browseren syns xhtml+xml er fint er gode ting :)

 

EDIT: ja, er ikke MIME-type, men det fikser problemet ditt :p

EDIT2: Det burde ikke være pes å ha/huske den eller om man lager siden sin vettug :)

Endret av arthoz
Lenke til kommentar
bare sende ut at content-type er xhtml+xml med php det.

 

<?php 
 if (stristr($_SERVER[HTTP_ACCEPT], "application/xhtml+xml")) {
 header("Content-Type: application/xhtml+xml; charset=iso-8859-1"); }
 else { header("Content-Type: text/html; charset=iso-8859-1"); }
?>

Sendes helt først i fila. (sjekke om browseren syns xhtml+xml er fint er gode ting :)

EDIT: ja, er ikke MIME-type, men det fikser problemet ditt :p

EDIT2: Det burde ikke være pes å ha/huske den eller om man lager siden sin vettug :)

5970794[/snapback]

Den der ville uansett vært nødvendig hvis jeg skulle laget en seriøs side som skulle fungert i IE (uten å måtte ha drevet med masse redirecting og mod_rewrite). Bare prøv å åpne testsiden i IE.

 

Men nå har det seg slik at jeg bare vil prøve litt forskjellige greier, og lurte på om det går an å fikse det slik at .php-filer parses som PHP og sendes som XHTMl vha .htaccess.

Lenke til kommentar

Seriøst, med mindre du har bruk for MathML eller noko sånt er dette ufattelig mykje arbeid til ingen nytte.

Kan du ikkje berre bruke ein HTML-DTD? :dontgetit:

 

 

RewriteEngine on
RewriteBase /
RewriteCond %{HTTP_ACCEPT} application/xhtml\+xml
RewriteCond %{HTTP_ACCEPT} !application/xhtml\+xml\s*;\s*q=0
RewriteCond %{REQUEST_URI} \.php$
RewriteCond %{THE_REQUEST} HTTP/1\.1
RewriteRule .* - [T=application/xhtml+xml]

 

Er ikkje sikker på om fila blir parsa som PHP før MIME-typen settast no, men du kan jo prøve.

Endret av Henrik Lied
Lenke til kommentar
<snip>

5970794[/snapback]

Den der ville uansett vært nødvendig hvis jeg skulle laget en seriøs side som skulle fungert i IE (uten å måtte ha drevet med masse redirecting og mod_rewrite). Bare prøv å åpne testsiden i IE.

 

Men nå har det seg slik at jeg bare vil prøve litt forskjellige greier, og lurte på om det går an å fikse det slik at .php-filer parses som PHP og sendes som XHTMl vha .htaccess.

5975044[/snapback]

 

det er derfor den sjekker om browseren kan motta den først, og ikke bare sender den ut som xhtml+xml blindt til alle browsere, jeg bruker akkurat den snutten på min side, og den mottar den som text/html i IE, mens resten får den som xhtml+xml

 

(siden min er i sig.)

Lenke til kommentar
Seriøst, med mindre du har bruk for MathML eller noko sånt er dette ufattelig mykje arbeid til ingen nytte.

Kan du ikkje berre bruke ein HTML-DTD? :dontgetit:

 

RewriteEngine on
RewriteBase /
RewriteCond %{HTTP_ACCEPT} application/xhtml\+xml
RewriteCond %{HTTP_ACCEPT} !application/xhtml\+xml\s*;\s*q=0
RewriteCond %{REQUEST_URI} \.php$
RewriteCond %{THE_REQUEST} HTTP/1\.1
RewriteRule .* - [T=application/xhtml+xml]

 

Er ikkje sikker på om fila blir parsa som PHP før MIME-typen settast no, men du kan jo prøve.

5975126[/snapback]

Det er bare på gøy. :p Jeg prøver å lære meg/forstå litt forskjellige greier.

Den parser ihvertfall PHP-kode, men jeg får ikke helt til xhtml samtidig. Delvis pga. PHP parser <?xml... som PHP-kode og kommer med parsing feil. Noen som vet hvordan jeg skrur av korte PHP-tagger? (Edit: Fikset parse-error vha <?php echo '<?xml... ?>'; ?>, men den sendes fremdeles ikke som xhtml)

 

Hvorfor ikke bruke php til å sette MIME?

header("Content-Type: application/xhtml+xml");

5975280[/snapback]

Man må sette det i hver eneste fil, og jeg ønsker å prøve å legge slike ting i et så lavt nivå som mulig. Mest på gøy da.

(en annen ovenfor foreslo akkurat det samme som deg)

Endret av endrebjorsvik
Lenke til kommentar
Hvorfor ikke bruke php til å sette MIME?

header("Content-Type: application/xhtml+xml");

5975280[/snapback]

Man må sette det i hver eneste fil, og jeg ønsker å prøve å legge slike ting i et så lavt nivå som mulig. Mest på gøy da.

(en annen ovenfor foreslo akkurat det samme som deg)

5976148[/snapback]

 

Har man så fryktelig mange sider da?

Index.php med et vettugt includescript, link til CSS (og eventuelt javascript), resten er kun html. Det blir vel 1 side med den koden det ^^;

 

Men godt å se at du fikk fikset problemene dine :)

Lenke til kommentar
Men godt å se at du fikk fikset problemene dine :)

5976944[/snapback]

Jeg var litt utydelig i stad. Jeg har egentlig ikke fått fikset det (og har heller ikke tilgang til php.ini hos start.no såvidt jeg vet).

Men, men. Jeg får bare innse at det ikke finnes noen skikkelig og enkel løsning da, selv om det egentlig skal være et enkelt problem.

Lenke til kommentar
Men godt å se at du fikk fikset problemene dine :)

5976944[/snapback]

Jeg var litt utydelig i stad. Jeg har egentlig ikke fått fikset det (og har heller ikke tilgang til php.ini hos start.no såvidt jeg vet).

Men, men. Jeg får bare innse at det ikke finnes noen skikkelig og enkel løsning da, selv om det egentlig skal være et enkelt problem.

5980057[/snapback]

Grunnen til at det er vanskelig er at det egentlig ikkje skal gjerast. Denne prosessen skal gå automatisk i nettlesaren. :)

Lenke til kommentar
Men godt å se at du fikk fikset problemene dine :)

5976944[/snapback]

Jeg var litt utydelig i stad. Jeg har egentlig ikke fått fikset det (og har heller ikke tilgang til php.ini hos start.no såvidt jeg vet).

Men, men. Jeg får bare innse at det ikke finnes noen skikkelig og enkel løsning da, selv om det egentlig skal være et enkelt problem.

5980057[/snapback]

Grunnen til at det er vanskelig er at det egentlig ikkje skal gjerast. Denne prosessen skal gå automatisk i nettlesaren. :)

5984298[/snapback]

Men selv Firefox og Opera mottar XHTML som text/html hvis ikke annet er satt via PHP/.htaccess. Hvordan skal det da gå automatisk i nettleseren? :dontgetit:

 

Har noe gått galt en plass i historien?

Lenke til kommentar

eivind: Tror du er litt ute av din ekspertise her :)

For at nettleseren skal tolke det som sendes som annet enn text/html må man sette en mine-type med php(el lignende) ellers leses det som html, og derfor tag-soup.

 

Docktypen har ingenting å si for hvordan dokumentet leses.

Lenke til kommentar

orsus: Tror nok du er litt ute av din ekspertise :!:

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

 

Den forteller nettleseren hvordan XML'en skal tolkes. Tolkes ikke XML'en riktig, vil den heller ikke vise riktig.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...