LJackson
12-04-2008, 12:11 AM
Hi All,
well as the title says i am getting a fatal error "Cannot use object of type MagpieRSS as array"
i am trying to display multiple rss/product feeds on one page with the feeds being determined by a record in a database which i use an array to fetch the correct data.
here is my code:
<?php
$user_name = "";
$password = "";
$database = "";
$server = "";
$db_handle = mysql_connect($server, $user_name, $password);
$db_found = mysql_select_db($database, $db_handle);
if ($db_found) {
// ORDER STORES BY HIGHEST RATING FIRST
$sql = "SELECT * FROM stores WHERE category = 'Entertainment' ORDER BY rating DESC";
$result = mysql_query($sql);
$rows = mysql_num_rows($result);
if ($result){
//for each of the stores in the database
for ($i = 0; $i < $rows; $i++) {
$row = mysql_fetch_array($result);
$storeID = $row['storeID'];
$store = $row['name'];
$stores[$i]=$store;
$feedtype = $row['feedID'];
$feed[$i] = $feedtype;
//GETTING OFFER INFO (NEW)
$rss_feed = "SELECT link FROM rss_feeds WHERE store = '$store' AND description ='top'";
$rss_result = mysql_query($rss_feed);
$rss_row = mysql_fetch_array($rss_result);
$rssIndividual = $rss_row['link'];
$rss[$i] = $rssIndividual;
define("MAGPIE_INPUT_ENCODING", "UTF-8");
define("MAGPIE_OUTPUT_ENCODING", "UTF-8");
define("MAGPIE_CACHE_DIR", "./magpierss/cache");
define("MAGPIE_CACHE_ON", 1);
define("MAGPIE_CACHE_AGE", 3600);
include_once("./magpierss/rss_fetch.inc");
//PASS THE STORE ID TO THE ADDRESS
$idReference = "?sID=" . $id;
$linkHTML = "<A HREF = \"stores.php".$idReference."\">";
$linkHTMLEnd = "</A>";
}
}
}
?>
<body>
<?php
print "<div class='recommends'>";
if ($rss[0] == ""){
print "No Information Currently Available Please Check Back Soon";
}
elseif ($rss[0] <> "" and $feed[0] == '2'){
$rss = fetch_rss($rss[0]);
$loop_count = 0;
for ($r = 0; $r <= $loop_count; $r++) {
foreach ($rss->items as $item){
if ($r <= $loop_count){
$href = $item['link'];
$title = $item['title'];
$desc = $item['description'];
$ref_date = $item['pubdate'];
$content = $item['atom_content'];
print "<br>";
print $content;
$r++;
}
}
}
}
elseif ($rss[0] <> "" and $feed[0] == '1'){
$xml=simplexml_load_file($rss[0]);
$max = 1;
for ($m = 0; $m < $max; $m++) {
// if counter is greater than max, break loop
foreach($xml as $feed2){
// create counter on first loop
if ($m < $max){
echo "<a href='{$feed2->deepLink}' target='_blank'><div class='producttitle'>{$feed2->productname}</a></div><br>";
echo "<a href='{$feed2->deepLink}' target='_blank'><img src='{$feed2->imageURL}' alt='{$feed2->productname}' border='0' hspace='5' /></a>";
$m++;
}
}
}
}
print "</div>";
print "<div class='recommends'>";
if ($rss[1] == ""){
print "No Information Currently Available Please Check Back Soon";
}
elseif ($rss[1] <> "" and $feed[1] == '2'){
$rss1 = fetch_rss($rss[1]);
$loop_count1 = 0;
for ($r = 0; $r <= $loop_count1; $r++) {
foreach ($rss1->items as $item1){
if ($r <= $loop_count1){
$href = $item1['link'];
$title = $item1['title'];
$desc = $item1['description'];
$ref_date = $item1['pubdate'];
$content = $item1['atom_content'];
print "<br>";
print $content;
$r++;
}
}
}
}
elseif ($rss[1] <> "" and $feed[1] == '1'){
$xml1=simplexml_load_file($rss[1]);
$max1 = 1;
for ($m = 0; $m < $max1; $m++) {
// if counter is greater than max, break loop
foreach($xml as $feed2){
// create counter on first loop
if ($m < $max1){
echo "<a href='{$feed2->deepLink}' target='_blank'><div class='producttitle'>{$feed2->productname}</a></div><br>";
echo "<a href='{$feed2->deepLink}' target='_blank'><img src='{$feed2->imageURL}' alt='{$feed2->productname}' border='0' hspace='5' /></a>";
$m++;
}
}
}
}
print "</div>";
?>
</body>
</html>
anyone have any ideas as to why i am getting this error?
many thanks
Luke
well as the title says i am getting a fatal error "Cannot use object of type MagpieRSS as array"
i am trying to display multiple rss/product feeds on one page with the feeds being determined by a record in a database which i use an array to fetch the correct data.
here is my code:
<?php
$user_name = "";
$password = "";
$database = "";
$server = "";
$db_handle = mysql_connect($server, $user_name, $password);
$db_found = mysql_select_db($database, $db_handle);
if ($db_found) {
// ORDER STORES BY HIGHEST RATING FIRST
$sql = "SELECT * FROM stores WHERE category = 'Entertainment' ORDER BY rating DESC";
$result = mysql_query($sql);
$rows = mysql_num_rows($result);
if ($result){
//for each of the stores in the database
for ($i = 0; $i < $rows; $i++) {
$row = mysql_fetch_array($result);
$storeID = $row['storeID'];
$store = $row['name'];
$stores[$i]=$store;
$feedtype = $row['feedID'];
$feed[$i] = $feedtype;
//GETTING OFFER INFO (NEW)
$rss_feed = "SELECT link FROM rss_feeds WHERE store = '$store' AND description ='top'";
$rss_result = mysql_query($rss_feed);
$rss_row = mysql_fetch_array($rss_result);
$rssIndividual = $rss_row['link'];
$rss[$i] = $rssIndividual;
define("MAGPIE_INPUT_ENCODING", "UTF-8");
define("MAGPIE_OUTPUT_ENCODING", "UTF-8");
define("MAGPIE_CACHE_DIR", "./magpierss/cache");
define("MAGPIE_CACHE_ON", 1);
define("MAGPIE_CACHE_AGE", 3600);
include_once("./magpierss/rss_fetch.inc");
//PASS THE STORE ID TO THE ADDRESS
$idReference = "?sID=" . $id;
$linkHTML = "<A HREF = \"stores.php".$idReference."\">";
$linkHTMLEnd = "</A>";
}
}
}
?>
<body>
<?php
print "<div class='recommends'>";
if ($rss[0] == ""){
print "No Information Currently Available Please Check Back Soon";
}
elseif ($rss[0] <> "" and $feed[0] == '2'){
$rss = fetch_rss($rss[0]);
$loop_count = 0;
for ($r = 0; $r <= $loop_count; $r++) {
foreach ($rss->items as $item){
if ($r <= $loop_count){
$href = $item['link'];
$title = $item['title'];
$desc = $item['description'];
$ref_date = $item['pubdate'];
$content = $item['atom_content'];
print "<br>";
print $content;
$r++;
}
}
}
}
elseif ($rss[0] <> "" and $feed[0] == '1'){
$xml=simplexml_load_file($rss[0]);
$max = 1;
for ($m = 0; $m < $max; $m++) {
// if counter is greater than max, break loop
foreach($xml as $feed2){
// create counter on first loop
if ($m < $max){
echo "<a href='{$feed2->deepLink}' target='_blank'><div class='producttitle'>{$feed2->productname}</a></div><br>";
echo "<a href='{$feed2->deepLink}' target='_blank'><img src='{$feed2->imageURL}' alt='{$feed2->productname}' border='0' hspace='5' /></a>";
$m++;
}
}
}
}
print "</div>";
print "<div class='recommends'>";
if ($rss[1] == ""){
print "No Information Currently Available Please Check Back Soon";
}
elseif ($rss[1] <> "" and $feed[1] == '2'){
$rss1 = fetch_rss($rss[1]);
$loop_count1 = 0;
for ($r = 0; $r <= $loop_count1; $r++) {
foreach ($rss1->items as $item1){
if ($r <= $loop_count1){
$href = $item1['link'];
$title = $item1['title'];
$desc = $item1['description'];
$ref_date = $item1['pubdate'];
$content = $item1['atom_content'];
print "<br>";
print $content;
$r++;
}
}
}
}
elseif ($rss[1] <> "" and $feed[1] == '1'){
$xml1=simplexml_load_file($rss[1]);
$max1 = 1;
for ($m = 0; $m < $max1; $m++) {
// if counter is greater than max, break loop
foreach($xml as $feed2){
// create counter on first loop
if ($m < $max1){
echo "<a href='{$feed2->deepLink}' target='_blank'><div class='producttitle'>{$feed2->productname}</a></div><br>";
echo "<a href='{$feed2->deepLink}' target='_blank'><img src='{$feed2->imageURL}' alt='{$feed2->productname}' border='0' hspace='5' /></a>";
$m++;
}
}
}
}
print "</div>";
?>
</body>
</html>
anyone have any ideas as to why i am getting this error?
many thanks
Luke