PHPとXHTML

去年、職場のサイトを修正したときのメモ。



当初通常のフレームページを使用していました。

さすがに見栄えも悪いし、SEOにもイクナイので、フレームをやめphpのincludeで左側メニューやヘッダー、フッターを呼び出す仕様にした。

このとき、phpをhtmで読ませるために.htaccessファイルにAddType application/x-httpd-php .phpを追加。



時はたち、今年6月新たに修正をしてHTML 4.01 TransitionalからXHTML 1.0 Strictに変更。


このとき、XML宣言のタグ<?xml version="1.0" encoding="Shift_JIS"?>がPHPの開始と同じなのでエラーが発生する。

対策として、.htaccessファイルにphp_flag short_open_tag Offを一行付け足して一応は解決した。



しかし問題が発生。

php_flag short_open_tag Offの一行のおかげでメールフォームに使っていたsendmail.phpが誤動作する。

いくつかメールフォームのphpスクリプトを試すも、やはり不具合が発生する。

あまり時間を掛けていられず、解決が難しいのでXML宣言をphpで出力することにより回避する。

各ページのxml宣言を<?php echo "<?xml version=¥"1.0¥" encoding=¥"Shift_JIS¥"?>"; ?>と書き換え、.htaccessファイルのphp_flag short_open_tag Offを消去。


んー。もっといい方法があればいいんだけどな。


それにしてもCSSの解釈バグは何とかならんもんか。

職場のサイトに訪れる人はまだまだIE6ユーザーが多いのでそこに対応させないと意味がない。IE6はマヂでうぜぇぇ。

なんであんなに妙な解釈をするのか不思議だわ。

あまり好ましくないが、CSSハックを使ってIE6以前のブラウザに対応させてみた。


それにしてもメインの仕事をしながら片手間にやる事じゃないような気がする(´・ω・`)
スポンサーリンク