0

次のような XML 形式を作成するのを手伝ってください:

http://telkomvision.com/soap/timetable/monday.xml

私がこのように作ったコード:

<?php
date_default_timezone_set("Asia/Jakarta");
$NowDate                = date("Y-m-d G:i:s");
$FormatWM               = date('Y-m-d',strtotime($NowDate));
$FormatLagi             = date('Y-m-d',strtotime($NowDate));

mysql_connect("localhost", "root", "");
mysql_select_db("telkncom_epg");

$namaTabel = "epg";

header('Content-Type: text/xml');

$query = "SELECT * FROM $namaTabel where tgl_mulai='26-SEP-12' limit 0,30";
$hasil = mysql_query($query);
$jumField = mysql_num_fields($hasil);

echo "<?xml version='1.0' ?>";
echo "<data>";
while ($data = mysql_fetch_array($hasil))
{
   echo "<".$namaTabel.">";
   for ($i=0; $i<=$jumField-1; $i++)
   {
      $namaField = mysql_field_name($hasil, $i);
      echo "<".$namaField.">".$data[$namaField]."</".$namaField.">";
   }
   echo "</".$namaTabel.">";
}
echo "</data>";
?>

そして、私のコードの結果は次のとおりです。

http://telkomvision.com/soap/timetable/CreateXML.php

私のデータベースの設計:

| | ID | channel_code | channel_name | 日付 | s_time | e_time | トピック | 罪 |

必要な結果を得るには、コードの何を変更すればよいですか?

4

1 に答える 1

1

Bertho さん、XML ドキュメントを再構築するためのオプションとして、XQuery を検討する必要があります。また、SQL アプリケーションを提供するソフトウェア ベンダーもいくつかあります。無料のものもあれば、有料のものもあり、XML ハンドラーを備えています。クエリ言語の使用を避けようとしている場合を除き、PHP ではなくクエリ言語を使用する必要があると思います。私は長い間、PHP で XML を編集するのに苦労していましたが、PHP を介してクエリ言語コードと同様によくできたコードを作成することは、努力する価値がないことに気付きました。PHP を使用している場合、エラーのトラブルシューティングを行い、エラーと例外を処理するルーチンを追加し、最適化に何ヶ月も苦労することになると思います。一方、クエリ言語を 1 日か 2 日使用して、使い切ることもできます。XQuery は習得が非常に簡単で、Web 標準であり、XPath 2.0 をサポートしています。君は' XPath や SimpleXML を使用するよりも、その方が確実に満足するでしょう。XSLT を検討することもできます。管理の必要性が少ないという理由で XQuery を好む人もいますが、私は XQuery の方がシンプルであることを好みます。

XQuery を使用する意思がある場合は、必要なコードを投稿できると思います。

于 2012-09-26T09:02:31.760 に答える