Я уверен, что это можно сделать. Мне нужно вытащить данные из SQLite db и преобразовать его в XML на лету, поэтому его можно прочитать с помощью fusioncharts для отображения хороших графиков.
Я видел это с помощью mysql, но мне трудно найти информацию о SQlite для XML.
<?php header("Content-type: text/xml"); $host = "localhost"; $user = "root"; $pass = ""; $database = "test"; $linkID = mysql_connect($host, $user, $pass) or die("Could not connect to host."); mysql_select_db($database, $linkID) or die("Could not find database."); $query = "SELECT * FROM blog ORDER BY date DESC"; $resultID = mysql_query($query, $linkID) or die("Data not found."); $xml_output = "<?xml version=\"1.0\"?>\n"; $xml_output .= "<entries>\n"; for($x = 0 ; $x < mysql_num_rows($resultID) ; $x++){ $row = mysql_fetch_assoc($resultID); $xml_output .= "\t<entry>\n"; $xml_output .= "\t\t<date>" . $row['date'] . "</date>\n"; // Escaping illegal characters $row['text'] = str_replace("&", "&", $row['text']); $row['text'] = str_replace("<", "<", $row['text']); $row['text'] = str_replace(">", ">", $row['text']); $row['text'] = str_replace("\"", """, $row['text']); $xml_output .= "\t\t<text>" . $row['text'] . "</text>\n"; $xml_output .= "\t</entry>\n"; } $xml_output .= "</entries>"; echo $xml_output;
Снято с http://www.kirupa.com/web/mysql_xml_php.htm
Заранее спасибо.
Вот версия кода, который вы опубликовали, но используя SQLite вместо MySQL:
<?php header("Content-type: text/xml"); $dbhandle = sqlite_open('sqlitedb'); $query = sqlite_query($dbhandle, 'SELECT * FROM blog ORDER BY date DESC'); $result = sqlite_fetch_all($query, SQLITE_ASSOC); try { $db = new PDO("sqlite:/path/to/database.db"); } catch(PDOException $e) { die('Unable to connect to database: ' . $e->getMessage()); } $query = $db->prepare("SELECT * FROM blog ORDER BY date DESC"); $query->execute(); $result = $query->fetchAll(); $xml_output = "<?xml version=\"1.0\"?>\n"; $xml_output .= "<entries>\n"; foreach ($result as $row) { $xml_output .= "\t<entry>\n"; $xml_output .= "\t\t<date>" . $row['date'] . "</date>\n"; // Escaping illegal characters $row['text'] = str_replace("&", "&", $row['text']); $row['text'] = str_replace("<", "<", $row['text']); $row['text'] = str_replace(">", ">", $row['text']); $row['text'] = str_replace("\"", """, $row['text']); $xml_output .= "\t\t<text>" . $row['text'] . "</text>\n"; $xml_output .= "\t</entry>\n"; } $xml_output .= "</entries>"; $db = null;
Ниже приведена документация PHP для PDO для получения дополнительной информации.
Вот учебник по использованию PDO .
EDIT: Изменен код для использования PDO
вместо функций sqlite_*
.