Hello guys
I'm pulling out my last remaining hairs with this PHP problem. I'm not really good at PHP but I'm trying to do some changes to a script as instructed by the developer, but apparently I got some wrong instructions. The error I get is:
Fatal error: Call to a member function postage_country_display() on a non-object in file.php on line 34
I've been searching the web high and low and can't seem to find a solution. Does anyone have a hint at what might be wrong?
Here is the code that's causing the problem and the class.
Code:
$template->set('items_id', intval($_REQUEST['items_id']));
$item_details = $db->get_sql_row("SELECT * FROM " . DB_PREFIX . "items WHERE
items_id='" . intval($_REQUEST['items_id']) . "'");
$unCountryPrice = unserialize(stripslashes($db->add_special_chars($item_details['country_postage'])));
// print_r($unCountryPrice);
$postageCountry = $item->postage_country_display($unCountryPrice,$item_details['currency']);
$template->set('postageCountry', $postageCountry);
$template->set('item_details', $item_details);
And here is the class:
function postage_country_display($unCountryPrice,$currency) {
if (is_array($unCountryPrice)) {
$postageCountry = "<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">
";
$fees = new fees();
while (list($k,$v)= each($unCountryPrice)){
$cQueyr = $this->query("SELECT a.name as name1,b.name as name2 FROM " . DB_PREFIX . "countries a LEFT JOIN " . DB_PREFIX . "countries b ON (a.parent_id = b.id) WHERE a.id = '". $k ."'");
$cRow = $this->fetch_array($cQueyr);
$postageCountry.="<tr><td>". ($cRow['name2']==""?$cRow['name1']:$cRow['name2'].' > '.$cRow['name1']) ."</td><td> ".$currency.' '.number_format($v,2)."</td></tr>";
}
$postageCountry.="</table>";
}
return $postageCountry;