---
title: "Tredimensionell array?"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/45676-tredimensionell-array"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "nkrantz"
published: "2002-06-12T09:15:18.000Z"
updated: "2002-06-12T09:43:47.000Z"
replies: 1
views: 208
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/php/45676-tredimensionell-array"
---

# Tredimensionell array?

## #1 — nkrantz, 2002-06-12T09:15Z

Hej!

Har lite strul med en kod som jag skall modifiera.
Koden:

```php
1 $resultSet = mysql_query("SELECT project.id,project.name FROM hours_project AS project, hours_time AS time WHERE time.project_id = project.id AND project.active = 1 AND time.active = 1 AND time.crew_id = $crewId AND time.hours > 0 AND time.date > '$pYear-$pMonth-15' AND time.date < '$pYear-$pNextMonth-15'");
2 
3 	$nameValueArray = fetchNameValue($resultSet);
4
5 	?>
6 	<table cellspacing=1 cellpadding=2 border=0 bordercolor="black">
7	<tr>
8	<?
9	$totalHours = 0;
10	while ( list($name,$value)=each($nameValueArray) )
11	{
12		?>
13		<td colspan=9 class="blackBold" bgcolor="white"><br><?=$value?></td></tr><tr>
14		<td bgcolor="#000000" class="whiteBold"><?=lang("Week")?></td>
15		<?
16		while(list($nameWeek,$valueWeek)=each($aWeekdays))
17		{
18			?>
19			<td bgcolor='#000000' class='whiteBold' align='center'><?=$valueWeek?></td>
20			<?
21		}
22		reset($aWeekdays);
23		?>
24		<td bgcolor="#000000" class="whiteBold" align="center"><?=lang("WeeklyTotal")?></td>
25		</tr><tr>
26		<?
27		
28		$resultSet = mysql_query("SELECT WEEK(date,1) AS week,WEEKDAY(date) AS day,hours,thing_id FROM hours_time AS time WHERE time.project_id = $name AND time.active = 1 AND time.crew_id = $crewId AND time.hours > 0 AND time.date > '$pYear-$pMonth-15' AND time.date < '$pYear-$pNextMonth-15'");
29		
30		$theHours = null;
31		
32		for ($i = 0; $i < mysql_num_rows($resultSet); $i++)
33		{
34			$data = mysql_fetch_object($resultSet);
35			$theHours[$data->week][$data->day] = $data->hours;
36		}
37
38		$projectHours = 0;
39		
40		while(list($name,$value)=each($theHours))
41		{
42			$weekHours = 0;
43			?>
44			<td bgcolor="silver" class="blackBold"><?=$name?></td>
45			<?
46
47			for ($i = 0; $i < 7; $i++)
48			{
49				?>
50				<td bgcolor="silver" class='default' align='center'><?=$value[$i]?></td>
51				<?
52				$weekHours += $value[$i];
53			}
54			?>
55			<td bgcolor="silver" class="default" align="right"><?=$weekHours?></td>
56			</tr><tr>
57			<?
58			$projectHours += $weekHours;
59		}
60		?>
61		<tr>
62			<td colspan=8 class="blackBold" bgcolor="silver"><?=lang("ProjectTotal")?></td>
63			<td class="blackBold" bgcolor="silver" align="right"><?=$projectHours?></td>
64		</tr>
65		<?
66		$totalHours += $projectHours;
67	}
```

 

På rad 50 vill jag skriva ut en annan sak som jag också hämtar från queryn på rad 28, nämligen 'thing_id'. Problemet är att för varje inlagd timme (det som visas med $value\[$i\]) så finns det en thing_id kopplad, så egentligen vill jag bara ha en 2:d array, fast med två olika värden på den andra dimensionen... hm.. hoppas ni förstår...

//Nippe

Permalänk: https://www.webforum.nu/p/45676

## #2 — nkrantz, 2002-06-12T09:43Z

löste det själv, litet urdrag ur koden:

```php
for ($i = 0; $i < mysql_num_rows($resultSet); $i++)
		{
			$data = mysql_fetch_object($resultSet);
			$theHours[$data->week][$data->day] = $data->hours;
			$theThing[$data->week][$data->day] = $data->thing_id;
		}

		$projectHours = 0;
		
		while(list($name,$value)=each($theHours))
		{
			list($name2,$value2)=each($theThing);
			$weekHours = 0;
			?>
			<td bgcolor="silver" class="blackBold"><?=$name?></td>
			<?

			for ($i = 0; $i < 7; $i++)
			{
				?>
				<td bgcolor="silver" class='default' align='center'><?=$value[$i]?>><?=$value2[$i]?><</td>
```

 

//Nippe

Permalänk: https://www.webforum.nu/p/696274

---

Tråden på webben: https://www.webforum.nu/amne/php/45676-tredimensionell-array
