09-30-2011
Populating Associate Arrays in PHP
I'm not very good at associative arrays; and working on this PHP code has got me a bit stumped. My goal is to populate a (multidimensional) associative array in a PHP while look after a MySQL query. The code fragment looks like this:
PHP Code:
while($campaign_row = mysql_fetch_array($campaigninfo))
{
$total = 0;
$bannerid_row = mysql_query("SELECT bannerid FROM ox_banners WHERE campaignid=".$campaign_row['campaignid']) or die(mysql_error());
while($row = mysql_fetch_array($bannerid_row))
{
$ad_impressions = mysql_query("SELECT impressions FROM ox_data_summary_ad_hourly WHERE ad_id=".$row['bannerid']) or die(mysql_error());
while($ad_imps_row = mysql_fetch_array($ad_impressions))
{
$total += $ad_imps_row['impressions'];
}
}
$remaining = $campaign_row['views'] - $total ;
$info = array($campaign_row['campaignid'] => array("name" => $campaign_row['campaignname'],"booked" => (int)$campaign_row['views'], "served" => $total , "remaining" => $remaining,"weight" => (int)$campaign_row['weight'] ));
print_r($info) ;
Fills like this ( print_r($info) ; ):
Quote:
Array ( [123] => Array ( [name] => NAME1 [booked] => 110000 [served] => 103027 [remaining] => 6973 [weight] => 3 ) )
Array ( [118] => Array ( [name] => NAME2 [booked] => 29000 [served] => 26622 [remaining] => 2378 [weight] => 1 ) )
Array ( [129] => Array ( [name] => NAME3 [booked] => 110000 [served] => 104667 [remaining] => 5333 [weight] => 2 ) )
But is not creating the expected array indexes based on:
PHP Code:
$campaign_row['campaignid']
Because when I dump the array out of the while loop, I get the last entry (NAME1) only:
Quote:
Array ( [129] => Array ( [name] => NAME3 [booked] => 110000 [served] => 104667 [remaining] => 5333 [weight] => 2 ) )
Array ( [129] => Array ( [name] => NAME3 [booked] => 110000 [served] => 104667 [remaining] => 5333 [weight] => 2 ) )
Array ( [129] => Array ( [name] => NAME3 [booked] => 110000 [served] => 104667 [remaining] => 5333 [weight] => 2 ) )
... which has got me completely confused and searching the net for examples or tutorials of how to properly populate this array based on the campaignid index has turned up blanks.
Anyone know how to do this?
10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
Dear all,
We are planning on upgrading our current HP unix 64 bites from version 11.0 to 11.11. I would like to find out all the possible problems that we will encounter especially on the application side. Can anyone provide me with list(s) or link(s) where I can find out more information?
... (0 Replies)
Discussion started by: wujee
0 Replies
2. Shell Programming and Scripting
hi,
i have 3 fields in a file and linked them through 2 associative arrays.. the problem is one of the associative array is working while the other is not.. the code part is:
awk ' BEGIN {
FS="|"
rc = getline < "ICX_RULES"
while ( rc == 1 )
{
rule_id=$1
rule_parameter=$2... (2 Replies)
Discussion started by: aami_sayan
2 Replies
3. Shell Programming and Scripting
Hi,
I'm looking for help trying to parse a data stream. Any help would be greatly appreciated.
My awk statement is
awk '/Aug/{a=$2}/vol/{print a, host, $1, $2, $3, $4, $5}' out.txt
Sample Data Stream "out.txt"
-----------------------------
# Aug 3 00:00:00 2008
===== DF =====... (3 Replies)
Discussion started by: jmd2004
3 Replies
4. Shell Programming and Scripting
Hi.
I have a file with the following structer:
DB DISK LOCATION SIZE
============================================
PROD DATA_01 /dev/dm-23 10
PROD DATA_02 /dev/dm-24 10
PROD DATA_03 /dev/dm-25 10
DEV DATA_04 /dev/dm-26 10
DEV DATA_05 ... (1 Reply)
Discussion started by: yoavbe
1 Replies
5. Shell Programming and Scripting
PHP question...I posted this on the Web Development forum, but maybe this is a better place!
I have an SQL query that's pulled back user IDs as a set of columns. Rather than IDs, I want to use their names.
So I have an array of columns $col with values 1,7,3,12 etc and I've got an array $person... (3 Replies)
Discussion started by: JerryHone
3 Replies
6. Web Development
PHP question...
I have an SQL query that's pulled back user IDs as a set of columns. Rather than IDs, I want to use their names.
So I have an array of columns $col with values 1,7,3,12 etc and I've got an array $person with values "Fred", "Bert", "Tom" etc
So what I want to do is display the... (3 Replies)
Discussion started by: JerryHone
3 Replies
7. Shell Programming and Scripting
Guys,
I need to iterate populate an array while going over files in directory. Can someone please tell me syntax I tried this but it isn't working ==>
for F in `ls -p "${directory1}" | grep -v "\/"`
do
cd "${directory2}"
cmp "${directory2}"/"${F}" "${directory1}"/"${F}" ... (2 Replies)
Discussion started by: Veenak15
2 Replies
8. Shell Programming and Scripting
Hi,
I need an elegant solotion in php. I need to compare 2 arrays (array1 & array2), to find all instances of array 2 which is not in array1.
I don't want to see any instances of array1 wich is not in array2 (here "the")
Array1: This, is, the, data, of, array1
Array2: this, is, data, Of,... (2 Replies)
Discussion started by: lowmaster
2 Replies
9. Programming
Hi,
I have to create a JList and the items I need to display are store in HashMap table. What would be the easiest way to populate this JList. Basically the items I want to display/show in the JList are the key values of the HashMap. Thanks in advance for any suggestions. (0 Replies)
Discussion started by: arizah
0 Replies
10. Programming
if i declare both but don't input any variables what values will the int array and file pointer array have on default, and if i want to reset any of the elements of both arrays to default, should i just set it to 0 or NULL or what? (1 Reply)
Discussion started by: omega666
1 Replies