2011-12-05 94 views
0

我試圖加載XML文件以PHP來顯示一個表格獲得變量PHP錯誤

// load SimpleXML 
$d = $_GET['d']; 
$books = new SimpleXMLElement('books.xml?cat=($d)', null, true); 

echo <<<EOF 
<table> 
     <tr> 
       <th>Title</th> 
       <th>Author</th> 
       <th>Publisher</th> 
       <th>Price at Amazon.com</th> 
       <th>ISBN</th> 
     </tr> 

EOF; 
foreach($books as $book) // loop through our books 
{ 
     echo <<<EOF 
     <tr> 
       <td>{$book->title}</td> 
       <td>{$book->author}</td> 
       <td>{$book->publisher}</td> 
       <td>\${$book->amazon_price}</td> 
       <td>{$book['isbn']}</td> 
     </tr> 

EOF; 
} 
echo '</table>'; 

我無法得到獲取變量返回任何data.hope你能幫助我。

+0

它甚至包含任何數據嗎? –

+0

'$ books = new SimpleXMLElement('books.xml?cat ='。$ d,null,true);'(但是您應該對從用戶端獲得的變量進行某種清理) – Rufinus

回答

2

這是單雙引號問題。

變化

'books.xml?cat=($d)' 

"books.xml?cat=($d)" 

...和read this一次。正常。

+0

「books.xml?cat =」 $ d – meandme

0

至少'books.xml?cat=($d)'未擴展。你需要使用雙引號。