mysql — как я могу использовать свой php-файл, чтобы прикрепить активный URL к моему выходному (XML) файлу

У меня есть довольно простой файл php, который пытается создать документ XML. Я пытаюсь получить URL-адреса из базы данных mysql для отображения в XML-документе, который я создаю.

Я не могу понять, почему мои URL игнорируются без информации xlink. То есть к базе данных mysql обращаются успешно, но в документе XML создаются только заголовок и описание.

И когда я добавляю информацию xlink, документ просто не выводит вообще. Код ниже.

<?php header('Content-Type: text/xml'); ?>
<?php echo '<?xml version="1.0" encoding="utf-8"?>'; ?>
<rss version="2.0">
<channel xmlns:xlink="http://www.w3.org/1999/xlink>
<title>METHUZALA.COM</title>
<link xlink:type="simple" xlink:href="http://www.methuzala.com">http://www.methuzala.com</link>
<description>UPDATE: Articles Found and Added</description>
<language> en-us </language>

<?php
require('php/includes/path.php');
$conn= mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME );
$query="SELECT title, short_title, article_url, short_description from  news_article";
$data = mysqli_query($conn,$query);
while ($row = mysqli_fetch_array($data))  {
echo '<item">';
echo '<title>'.  $row['title']. '</title>';
echo '<wurl xlink:type="simple" xlink:href="'.$row['article_url'].'" xlink:show="new">TESTING'.'</wurl>';
echo '<description>'. $row['short_description']. '</description>';
echo '</item>';
} //while-end of file
mysqli_close($conn);
echo '</item>';
?>
</channel>
</rss>

0

Решение

Когда вы открываете <item> тег, у вас есть дополнительная цитата …

echo '<item">';

Должно быть

echo '<item>';

Это приведет к тому, что цитирование данных приведет к объединению всех видов.

0

Другие решения

Я приветствую любой вклад, который может быть полезен. Я удалил информацию xlink, и этот код дает результат, который радикально отличается в зависимости от браузера.

В Chrome: он дает правильный вывод XML-файла rss, но не выводит новости.

В Safari: он дает правильный вывод новостной ленты, но он не отформатирован. это один большой абзац.

В Firefox: он дает правильные первые строки канала (название новостной ленты, описание новостной ленты, но в выводе xml не отображаются ссылки или элементы. Все элементы пусты.

<?php header('Content-Type: text/xml');
echo '<?xml version="1.0" encoding="utf-8"?>'; ?>
<rss version="2.0">
<channel>
<title>METHUZALA.COM</title>
<link>http://www.methuzala.com</link>
<description>UPDATE: Articles Found and Added</description>
<language> en-us </language>

<?php
require('php/includes/path.php');
$conn= mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME );
$query="SELECT title, article_url, short_description from  news_article";
$data = mysqli_query($conn,$query);
while ($row = mysqli_fetch_array($data))  {
$title=$row['title'];
$wurl=$row['article_url'];
$description=$row['short_description'];
?>
<element>
<title><?php echo $title; ?></title>
<link><?php echo $wurl; ?></link>
<description><?php echo $description; ?></description>
</element>
<?php
}
mysqli_close($conn);
?>
</channel>
</rss>

выход Firefox выход сафари

0

По вопросам рекламы [email protected]