Mã dưới đây để xuất dữ liệu từ bảng mysql dưới dạng tệp xml. Tôi đã thử một số mã nhưng không nhận được kết quả. Vui lòng kiểm tra và giúp tôi.Làm cách nào để xuất dữ liệu mysql vào xml bằng cách sử dụng php
Hiện nay nhận được kết quả là
8sarathsarathernakulam423432washington9rahulrahulernakulam21212121newyork10aaaa3london11bbbb1newyork12cccc2washington13dddd3london
Mã
<?php
require_once "classes/dbconnection-class.php";
if(isset($_POST['export'])){
header('Content-type: text/xml');
$xml = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>";
$root_element = "addressbook"; //fruits
$xml .= "<$root_element>";
$query = "SELECT AB.id, AB.name, AB.firstname, AB.street, AB.zipcode, AB.city_id, CI.city FROM address_book AS AB INNER JOIN city AS CI ON AB.city_id = CI.id";
$result = $mysqli->query($query);
if (!$result) {
die('Invalid query: ' . $mysqli->error());
}
while($result_array = $result->fetch_assoc()){
$xml .= "<address>";
foreach($result_array as $key => $value)
{
//$key holds the table column name
$xml .= "<$key>";
//embed the SQL data in a CDATA element to avoid XML entity issues
$xml .= "<![CDATA[$value]]>";
//and close the element
$xml .= "</$key>";
}
$xml.="</address>";
}
$xml .= "</$root_element>";
header ("Content-Type:text/xml");
//header('Content-Disposition: attachment; filename="downloaded.xml"');
echo $xml;
}
?>
trình duyệt cho thấy
<?xml version="1.0" encoding="UTF-8"?><addressbook><address><id><![CDATA[8]]></id><name><![CDATA[sarath]]></name><firstname><![CDATA[sarath]]></firstname><street><![CDATA[ernakulam]]></street><zipcode><![CDATA[42343]]></zipcode><city_id><![CDATA[2]]></city_id><city><![CDATA[washington]]></city></address><address><id><![CDATA[9]]></id><name><![CDATA[rahul]]></name><firstname><![CDATA[rahul]]></firstname><street><![CDATA[ernakulam]]></street><zipcode><![CDATA[2121212]]></zipcode><city_id><![CDATA[1]]></city_id><city><![CDATA[newyork]]></city></address><address><id><![CDATA[10]]></id><name><![CDATA[a]]></name><firstname><![CDATA[a]]></firstname><street><![CDATA[a]]></street><zipcode><![CDATA[a]]></zipcode><city_id><![CDATA[3]]></city_id><city><![CDATA[london]]></city></address><address><id><![CDATA[11]]></id><name><![CDATA[b]]></name><firstname><![CDATA[b]]></firstname><street><![CDATA[b]]></street><zipcode><![CDATA[b]]></zipcode><city_id><![CDATA[1]]></city_id><city><![CDATA[newyork]]></city></address><address><id><![CDATA[12]]></id><name><![CDATA[c]]></name><firstname><![CDATA[c]]></firstname><street><![CDATA[c]]></street><zipcode><![CDATA[c]]></zipcode><city_id><![CDATA[2]]></city_id><city><![CDATA[washington]]></city></address><address><id><![CDATA[13]]></id><name><![CDATA[d]]></name><firstname><![CDATA[d]]></firstname><street><![CDATA[d]]></street><zipcode><![CDATA[d]]></zipcode><city_id><![CDATA[3]]></city_id><city><![CDATA[london]]></city></address></addressbook>
Tôi có ấn tượng rằng những gì bạn nói là kết quả bạn nhận được thực sự chỉ là những gì được hiển thị trong trình duyệt của bạn. Xin lưu ý rằng trình duyệt không có khả năng hiển thị xml khi bạn tạo trình duyệt theo bất kỳ cách nào có ý nghĩa. Cân nhắc xem xét nguồn của tài liệu mà trình duyệt của bạn hiển thị hoặc kết xuất đầu ra của bạn vào một tệp và xem xét điều đó. – arkascha
@arkascha, Cảm ơn, tôi đã cập nhật kết quả trình duyệt của mình với câu hỏi của mình. Tôi đã kiểm tra điều đó nhưng tôi không tìm thấy vấn đề. Tôi không biết tại sao kết quả không đúng. –
OK, trông đẹp hơn nhiều! Bây giờ nếu bạn cũng cho chúng tôi biết chính xác những gì là sai với kết quả bạn nhận được chúng tôi thực sự sẽ có thể giúp với câu hỏi của bạn ... – arkascha