• ベストアンサー

XHTMLを読み込んで別のXHTMLに変換可能?

PHPを使用して、表の項目並べ替えやソートをしたいと思っています。データベースは使用しません。出力はXHTMLを考えています。 CSVやXMLを元データとして持って、PHPで読み込み、動的に出力できるというのは分かったのですが、元データをCSVやXMLではなく、(規則的な構造で記述した)XHTMLで持ち、特定のidもしくはclassを持った要素の要素内容を読み込み、別のXHTMLに動的に出力するというのは、可能なのでしょうか? 可能な場合、サンプルがある書籍かURLを教えてくださると非常に助かります。 不可能な場合、理由をなるべく易しく(当方プログラムには詳しくないため)教えてください。 よろしくお願いいたします。

  • PHP
  • 回答数2
  • ありがとう数3

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

可能です。 ただ、PHPでやるのはあまり効率的とは言えません(ソートするたびサーバ側で処理しなければならない)。 表の項目の並び替えやソートだけならJavaScript(クライアント側だけで)を利用するのがベストだと思います(むしろ簡単です)。 http://gigazine.net/index.php?/news/comments/20060321_sortedtable/ http://www.mdn.co.jp/Books/Support/WDkaiketu/chapter4/Vol26/s3/3.html http://www.phoenix-c.or.jp/~s-moon/sub411.htm 表のデータ自体の更新(DBとの連携や次の50件の呼び出し等)にはPHPが有効です。 # JavaScript無効なモバイル端末にはやはりPHPで対応せざるを得ませんが。 参考まで。

salt-water
質問者

お礼

そうですよね。Ajaxも視野には入れていましたが、 ># JavaScript無効なモバイル端末にはやはりPHPで対応せざるを得ませんが。 これを考えた場合、やはりPHPでサーバ処理するのが一番無難かな、と思いました。 URL、参考になりました。GIGAZINEで紹介されているものが特に面白いですね。 ありがとうございました!

その他の回答 (1)

noname#39970
noname#39970
回答No.1
salt-water
質問者

お礼

その手がありましたね。XSLTは書いたことがあったのに、気付きませんでした。 ありがとうございました。

salt-water
質問者

補足

他にも方法があったら教えて頂けると幸いです。よろしくお願いいたします。

関連するQ&A

  • PHP arrayを使ってソートする。

    PHP初心者です。 教えてください。 現在複数のXMLファイルをPHPで取り込んで、それぞれ要素のデータを画面上に一行ずつ表示させています。 全件取り込んで、日時(要素)のデータでソートしたいです。 配列を使ってfor文を使えばできると思っていますが、参考にできるサンプルがあれば教えていただけますでしょうか。 カンマ区切り(?)で1回文字列にしてソートとかすればいいのでしょうか? イメージがつかめていません。 宜しくお願いします。

    • ベストアンサー
    • PHP
  • XHTMLのIEでの表示

    PHPを使ってXHTMLを出力しています。 下記のようなソースを使った場合、IE系ブラウザでXMLツリーが表示されてしまいます。IE8beta2、IE7、IE5で確認しています。 Google Chrome、Opera、FireFox 3ではこのような問題は起きていません。 どのようにすれば解決できるでしょうか。XML宣言を除けば一応表示はされたのですが。後方互換モードのことなどもIE7で改善されたとのことなので、混乱しています。 <?xml version="1.0" encoding="UTF-8"?> <!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="ja" lang="ja"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title></title> <body> </body> </html>

  • xmlとxslをサーバサイドでxhtmlに変換して出力

    xmlとxslを使ってfirefoxで確認したところxhtmlになっていました。 で、これを全てのブラウザに対応したく、サーバサイドでxhtmlに変換して出力したいのです そうするとIEやFirefoxなどでヘッダ調節やなにやらできると思ったので 共通部分も部品化できそうだし。 問題はまだPHPでUAでブラウザを判断してとばしたり 共通部分をインクルードして表示する程度しかできません。 これぐらいの技術でなんとかなるものなのでしょうか? この関数を見ろという感じでも構いませんので、何かヒントをください これだけはやりたいというのが、xml文書にできればxslファイルの在処は記載したくないのです。 xml文書を指定すれば、単純なxml文書を見るという感じにしたいので どうかよろしくお願いします

    • ベストアンサー
    • PHP
  • XHTMLとHTMLの違いについて

    XHTMLのHTMLの違いについて教えてください。 勉強するものの、これといった違いが判らずにこまってます。 (今のところ、HTMLとは記述方式が違うんだよ~とか、XMLの宣言が必要なんだよ~、ということはわかったのですが) (参考したURL) http://www.atmarkit.co.jp/fxml/askxmlexpert/022xhtml/22xhtml.html HTMLとXHTMLの違いとして以下の点が挙げられていることがわかりました。 ----------------------------------------------------------------- 1.文書は整形式でなければならない 2.要素名及び属性名は小文字でなければならない 3.非空要素には終了タグが必要である 4.属性値は常に引用符で括られなければならない 5.属性の省略化はしてはならない 6.meta、hr、br、img などは、空要素として書く 7.属性値内での改行を含む複数の空白は1つと見なす 8.スクリプトおよびスタイル要素の定義が異なる 9.要素の入れ子などSGMLの排除機能を再現できない 10.‘id’および‘name’属性をもつ要素は、‘id’属性を使用する ----------------------------------------------------------------- とあるのですが、違う部分っていうのは「こういった定義部分だけ」であって、動作として大きな違い「ここが違うんだ」といった部分はないのでしょうか? 「書式が厳密になっています。」言葉から、XHTMLは「HTMLをより厳密に書くもの」ということなのでしょうか? また、10番目の、 「‘id’および‘name’属性をもつ要素は、‘id’属性を使用する 」について、イメージできなかったのですが、一体何のことを言っているのでしょうか? 例えば、JavaScriptを使用して、要素を操作する場合は、 getElementById("ID名")にて、操作を行うべきである、と言っているのでしょうか?

    • ベストアンサー
    • HTML
  • XHTML1.1+MathML2.0+SVG1.1をブラウザで表示したい。

    XHTML1.1 MathML2.0 SVG1.1 XML1.0 これを含むコンテンツをブラウザで表現する方法を探 しています。 XHTMLを文書の全体的な配置や意味の定義に使い、色や、配置にCSSを使い。 数字表記にはMathMLを。 ベクター画像にはSVGを使用し。 他のプログラムが使用するデータをXMLとして内包するページを作成しようと思っています。 XML1.0に関しての仕様は大体抑えたので、HTMLをXMLで再定義したものであるXHTML1.1でウエブページを作ろうとしたところなぜか巧く表示できません。 ページは"整形式XML"としては正しく作成しました。 ブラウザはIE6.0です。 使用する前にパラメータ エンティティを定義しなければなりません。リソース 'http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd' の実行エラーです。ライン 85、位置 2 %xhtml-prefw-redecl.mod; -^ というエラーメッセージが返されました。 ファイル拡張子は、xmlとしました。 ページは、人間だけでなく、他のプログラムへ対しても意味を持つようにしたいので、中にXMLのデータを挟みこめることは必須です。 この条件での、ウエブページ制作を詳しく解説しているサイトは無いでしょうか?

    • 締切済み
    • XML
  • xhtml リンクが開かないです。

    たとえば、 http://www.1234567890.xhtml というリンクがメールにて私に送られてきた場合、それをクリックしてもページが表示されません。 代わりに、 「XMLページを表示できません。スタイル シートを使用した XML 入力は表示できません。エラーを訂正してください。」 といった表示がされてしまいます。 ちなみに、使用ブラウザはIE7です。 おわかりになる方、お手数ですがお助け願います。 よろしくお願いいたします。

  • accessのデータの並べ替えについて

    初めてaccessデータベースを作る為、マニュアルを読んでもわからなかったので、初歩的な質問をさせてください。 顧客データを管理しているのですが、一つのテーブルを元に、データを管理しています。(氏名・住所・希望予算・連絡先・顧客ランクなど) それをレポート出力するにあたって、ソート(並べ替え)をかけるのですが、時と場合によって、「今日は、顧客来店日付順」「今日は担当者別」「今日は予算別」という風にソートの基準が違います。 レポートの雛型は作成してあるのですが、それは日付順でしか並べ替えできません。 任意に、並べ替えの基準を変えて並べ替えをし、既存のレポートに出力することはできるのですか? それとも、並べ替えをするたびにレポート書式をデザイン作成しなくてはいけないのですか? 初心者なので、なるべく簡単な方法があるとよいのですが・・・。

  • csvからの取込み

    こんばんは。 ただいまPHP勉強中です。 サンプルのサイトなど見てがんばっていますが、データベースにCSVからデータを取り込むところでつまづいています。 サンプルコードがあるサイトや、ヒントでも教えていただけたらと思います。 どうぞよろしくお願いします。

    • ベストアンサー
    • PHP
  • 携帯サイト制作をしておりまして、XHTML+Shift_JISで出力で

    携帯サイト制作をしておりまして、XHTML+Shift_JISで出力できずかなり悩まされています。なんでも結構ですのでヒントをいただけましたら幸いです。。 【現象1】 文字化けする。DoCoMoとFireFoxでいずれもUTF-8のコードをShift_JISとして表示しようとしている。 (PHPの記述) header("Content-Type: application/xhtml+xml; charset=Shift_JIS"); mb_internal_encoding('UTF-8'); mb_http_output('Shift_JIS') ob_start('mb_output_handler'); (XHTMLの記述) <!DOCTYPE html PUBLIC "-//i-mode group (ja)//DTD XHTML i-XHTML(Locale/Ver.=ja/1.1) 1.0//EN" "i-xhtml_4ja_10.dtd"> <html xml:lang="ja"> <head> <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=shift_jis" /> 【現象2】 PHPでShift_JISで出力できているが、DoCoMoで見るとXHTMLではなくHTMLと解釈されてしまっている。なので<div style="background-color..といったものが無効になっている。 (PHPの記述) mb_internal_encoding('UTF-8'); mb_http_output('Shift_JIS') ob_start('mb_output_handler'); (XHTMLの記述) 現象1と同じ。 【現象3】 DoCoMoとFirefoxいずれも何も出力されなくなる。ソースも表示できない。 (PHPの記述) 現象2と同じ。 (XHTMLの記述) <?xml version="1.0" encoding="Shift_JIS"?> <!DOCTYPE html PUBLIC "-//i-mode group (ja)//DTD XHTML i-XHTML(Locale/Ver.=ja/1.1) 1.0//EN" "i-xhtml_4ja_10.dtd"> <html xml:lang="ja"> <head> <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=shift_jis" /> 【開発条件】 PHP=PHP Version 5.1.6 言語=XHTML サーバー=XSERVER 確認キャリア=DoCoMo N904i phpinfoの内容 output_buffering no value no value output_handler no value no value default_charset no value no value mbstring.detect_order auto auto mbstring.encoding_translation Off Off mbstring.func_overload 0 0 mbstring.http_input auto auto mbstring.http_output SJIS SJIS mbstring.internal_encoding EUC-JP EUC-JP mbstring.language Japanese Japanese mbstring.strict_detection Off Off mbstring.substitute_character no value no value ●謎1 header("Content-Type: application/xhtml+xml; charset=Shift_JIS");をつけると なぜShift_JISに変換してくれなくなるのでしょう? ●謎2 <?xml version="1.0" encoding="Shift_JIS"?> をつけると何も出力されなくなるのはなぜでしょう?

    • ベストアンサー
    • PHP
  • XHTMLの必要性について質問!

    XHTMLを調べると次のような文章がありました。 ------------------------------ <XHTMLとは、Webページを記述するためによく使われるHTMLを、XMLに適合するように定義し直したマークアップ言語。W3Cが仕様策定を行っている。 もともとHTMLはXMLの親にあたるSGMLから派生した言語で、Webブラウザメーカー主導で独自の拡張が続いてきた。このため、HTMLはXMLとは一部整合性を欠く言語仕様となっているが、両者の違いはある程度吸収できる範囲のものであるため、従来のWebブラウザでも問題なく見られ、かつXMLに準拠した文書を作成する言語仕様としてXHTMLが作成された。 HTMLをXML準拠のものに更新した理由として、インターネットをはじめとしたオンラインでのデータの送受信にXMLが使用されることを想定し、HTML文書もXML処理系で統一的に扱える環境を整える必要があったことが挙げられている。> ------------------------------- (質問1) この文面からすると、HTMLでも「従来のWebブラウザで問題なく見られる」と判断するのですが、どうしてXHTMLが必要なのかが解りません。 (質問2) 現在、HTMLでは不都合が生じているPCサイトがあれば、ご紹介願います。 (質問3) 今後、HTMLでは動作が出来なくなるのでしょうか? 以上。宜しくお願いします。

    • ベストアンサー
    • HTML