• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 204
  • Last Modified:

PHP - Values not pulling out of array

Please see code below.  $var['address'], etc does not work, can't figure out why.

Thank you!
function officeLocation($country) {
				
				$var = array();
				$var = $this->dealer_array;
				
					if ($country == 'NL' || $country == 'DE') {
						$location = ''.$this->dealer_name.'<br/>Leyenseweg 111c<br/>3721 BC Bilthoven<br/>The Netherlands<br/>
						Phone +31(0) 30 229 30 04<br/>Fax   +31(0) 30 274 00 74';
					} else {
						$location = '	'.$this->dealer_name.'<br/>
										'.$var['address'].'<br/>
										'.$var['phone'].'<br/>
										'.$var['fax'].'<br/>';
					}
					
				return $location;
			}

Open in new window

0
vrmetro
Asked:
vrmetro
  • 3
  • 2
1 Solution
 
Roger BaklundCommented:
What is the content of $this->dealer_array ?

Show a larger portion of your script.
0
 
vrmetroAuthor Commented:
Code outlines below the process.

I returned just the $var array and it's value is 1.  I return $this->dealer_array(invoice class) from the officeLoation function and the value is 1.  

Now you think the dealer_array is simply not set prior to calling in officeLocation(), not true, I did
print_r($invoice->dealer_array);
before calling $location = $invoice->officeLocation($country); and the array output below is what I receive.

Array ( [num] => 101 [name] => Omega GPS [address] => [phone] => [fax] => [countries] => US,BR,MX [vatnum] => [bcolor] => f6f2eb [acolor] => ebe1d1 [hcolor] => f6f2eb [rr1] => ebe1d1 [rr2] => fff [rr3] => e2e0e0 [rr_title_color] => a82f2b [image] => [s_image] => [instid] => 144954 )

Thanks for your help!!!
//Loading common class running this in the constructor:
$this->dealer_array = $this->setDealer();
 
// function setDealer : sets invoice object variables 
	function setDealer() {
		global $database;
		global $invoice;
		
		$data=array();
		$data = $database->select('SELECT * FROM `jos_fw_dealers` WHERE jos_fw_dealers.num=\''.$_REQUEST['m_dealer'].'\'');
		// set in common
		$this->dealer_name = $data['name'];
		$this->dealer_array = $data;
		// set in invoice instance
		$invoice->dealer_array = $data;
		$invoice->dealer_name = $data['name'];
		
		return $data;
	}
 
// all above is ran at initialization
// next we call from the controller
$location = $invoice->officeLocation($country);
// office location function in original post

Open in new window

0
 
vrmetroAuthor Commented:
i'm an idiot!  Was grabbing a deal that had no address/phone/etc.

Sorry.
0
 
Roger BaklundCommented:
>> Array ( [num] => 101 [name] => Omega GPS [address] => [phone] => [fax] => [countries] => US,BR,MX [vatnum] => [bcolor] => f6f2eb [acolor] => ebe1d1 [hcolor] => f6f2eb [rr1] => ebe1d1 [rr2] => fff [rr3] => e2e0e0 [rr_title_color] => a82f2b [image] => [s_image] => [instid] => 144954 )

address, phone and fax are all blank here...?
0
 
Roger BaklundCommented:
:)
0

Featured Post

Important Lessons on Recovering from Petya

In their most recent webinar, Skyport Systems explores ways to isolate and protect critical databases to keep the core of your company safe from harm.

  • 3
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now