CodingForums.com

CodingForums.com (http://www.codingforums.com/index.php)
-   XML (http://www.codingforums.com/forumdisplay.php?f=3)
-   -   Resolved Simple PHP XML parsing (http://www.codingforums.com/showthread.php?t=272587)

Redcoder 09-08-2012 06:58 PM

Simple PHP XML parsing
 
I'm trying to break down this XML file containing the below code:

Code:

<stockreport>
<timestamp>08/09/2012 08:46:02</timestamp>
<version>2.0</version>
<products>
<product type="main">
        <code>1</code>
        <name>Table</name>
        <stock>43</stock>
        <status>In Stock</status>
</product>
<product type="main">
        <code>2</code>
        <name>Chair</name>
        <stock>64</stock>
        <status>In Stock</status>
</product>
</stockreport>

I want inorder to display it in a table. I'm using the below PHP code:

PHP Code:

<?php
$url 
file_get_contents('http://www.topshinellc.com/feed/status-xml.asp.xml'); //The path to the XML file
$data_s = new SimpleXMLElement($url);
echo 
"<table border='1' >";
echo 
"<tr><th width='200'><h4>code</h4></th><th width='200'><h4>Name</h4></th><th width='200'><h4>Stock</h4></th><th width='200'><h4>Status</h4></td></th></tr>";
foreach(
$data_s as $data)
{
echo <<<EOF
<tr>
<td width='200'>$key
{$data->product->code}</td>
<td width='200'>
{$data->product->name}</td>
<td width='200'>
{$data->product->stock}</td>
<td width='200'>
{$data->product->status}</td>
</tr>
EOF;
}
echo 
"</table>";

Instead of getting two rows, only the first row is being displayed.
Like This:
Code Name Stock Status
1 Table 64 In Stock
What is wrong or missing in the code?. Of course this code will need to parse hundreds of such XML tags containing the data.

sunfighter 09-09-2012 05:41 PM

In your xml file you don't close the <products> tag.

Code:

<td width='200'>$key{$data->product->code}</td>
$key not defined. You get one row if $key is removed.

Redcoder 09-09-2012 07:22 PM

I didn't get an answer here so I figured that it was because of the PHP part therefore maybe most of the people who visited the XML forum used other languages. I reposted it http://www.codingforums.com/showthread.php?t=272632 and got an answer.

But thanks for pointing that out.

Off-topic: Isn't there a way of marking a thread as resolved?

Alex Vincent 09-10-2012 04:17 AM

FYI, we really don't like it when the same question is asked in more than one forum. Moderators and WA are happy to move threads from one thread to another, as needed. Shame on you! :p

I actually don't know how to mark a thread resolved. :)

Redcoder 09-10-2012 04:56 PM

Quote:

Originally Posted by Alex Vincent (Post 1268502)
I actually don't know how to mark a thread resolved. :)

How do you not know? Your a MOD dammit.
:D

The option is either there or it isn't there.

sunfighter 09-10-2012 05:58 PM

Edit your original post. Next to the title is a dropdown. That will set things to resolved.

Redcoder 09-10-2012 06:03 PM

Quote:

Originally Posted by Alex Vincent (Post 1268502)
FYI, we really don't like it when the same question is asked in more than one forum. Moderators and WA are happy to move threads from one thread to another, as needed. Shame on you! :p

I actually don't know how to mark a thread resolved. :)

Quote:

Originally Posted by sunfighter (Post 1268666)
Edit your original post. Next to the title is a dropdown. That will set things to resolved.

Neat. :thumbsup: Although I thought MOD's should know that hehe.

:D


All times are GMT +1. The time now is 03:39 PM.

Powered by vBulletin®
Copyright ©2000 - 2013, Jelsoft Enterprises Ltd.