SQLデータベースから調達してiPhoneアプリケーション用のXMLを生成するための単純なPHPサービスを取得しようとしています。データベースにはさまざまなテキストソースと文字があり、そのうちのいくつかはスクリプトを破棄し、次のエンコードエラーを生成しているようです。
1行目の6232列のエラー:エンコーディングエラー
phpは次のとおりです。
<?php
//database configuration
$config['mysql_host'] = "XXX.XXX.XXX.XXX";
$config['mysql_user'] = "XXXX";
$config['mysql_pass'] = "XXXX";
$config['db_name'] = "XXXX";
$config['table_name'] = "articles";
//connect to host
mysql_connect($config['mysql_host'],$config['mysql_user'],$config['mysql_pass']);
//select database
@mysql_select_db($config['db_name']) or die( "Unable to select database");
$xml = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>";
$root_element = $config['table_name']."s";
$xml .= "<$root_element>";
$sql = "SELECT * FROM ".$config['table_name'];
$result = mysql_query($sql);
if (!$result) {
die('Invalid query: ' . mysql_error());
}
if(mysql_num_rows($result)>0)
{
while($result_array = mysql_fetch_assoc($result))
{
$xml .= "<".$config['table_name'].">";
//loop
foreach($result_array as $key => $value)
{
$xml .= "<$key>";
$xml .= "<![CDATA[$value]]>";
//and close the element
$xml .= "</$key>";
}
$xml.="</".$config['table_name'].">";
}
}
$xml .= "</$root_element>";
//send xml
header ("Content-Type:text/xml");
echo $xml;
?>
ページ全体が失敗する記事もあれば、失敗しない記事もあります。どんな助けでも大歓迎です。