"Fatal error: Uncaught Error: Call to a member function getTitle() on string in D:\xampp\htdocs\index4.php:19 Stack trace: #0 D:\xampp\htdocs\index4.php(46): music_shop\XMLMusicWriter->writeToXMLFile() #1 {main} thrown in D:\xampp\htdocs\index4.php on line 19"
namespace music_shop;
include 'MusicShopWriter.php';
include 'MusicProduct.php';
class XMLMusicWriter extends MusicShopWriter {
public function writeToXMLFile(){
$writer = new \XMLWriter();
$writer->openMemory();
$writer->startDocument('1.0', 'UTF-8');
$writer->startElement("albums");
foreach ($this->albums as $musicProduct) {
$writer->startElement("album");
$writer->startElement("title");
$writer->text($musicProduct->getTitle());
$writer->endElement();
$writer->startElement("artist");
$writer->text($musicProduct->getArtist());
$writer->endElement();
$writer->startElement("producer");
$writer->text($musicProduct->getProducer());
$writer->endElement();
$writer->startElement("price");
$writer->text($musicProduct->getPrice());
$writer->endElement();
$writer->endElement();
}
$writer->endElement(); // products
$writer->endDocument();
print $writer->flush();
}
}
$title = isset($_POST['title']) ? $_POST['title'] : '';
$artist = isset($_POST['artist']) ? $_POST['artist'] : '';
$producer = isset($_POST['producer']) ? $_POST['producer'] : '';
$price = isset($_POST['price']) ? $_POST['price'] : '';
$musicProduct = new MusicProduct($title,$artist,$producer,$price);
$xmlMW = new XMLMusicWriter();
//$musicProduct = new MusicProduct($title,$artist,$producer,$price);
$xmlMW->addAlbum($musicProduct);
$xmlMW->writeToXMLFile();
?>