Solved

2 dimensional arrays

Posted on 2002-06-20
8
285 Views
Last Modified: 2006-11-17
hey,

i filled a 2 - dimensional array within a loop. now i'm trying to get back my values with an index. but i just have the last value i wrote to the array. looks like every time i write something new to the array the rest is deleted ?!?

0
Comment
Question by:Zaim
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 2
  • 2
8 Comments
 
LVL 40

Expert Comment

by:Richard Quadling
ID: 7096065
$iN = 8; // How many locations;
$aC[0][0] = 0;
$aA[0][0] = 0;
$aP[0][0] = 0;

for ($iI = 0; $iI < $iN; $iI++)
     {
     for ($iJ = 0; $iJ < $iN; $iJ++)
          {
          $aA[$iI][$iJ] = 0;
          $aC[$iI][$iJ] = 9999;
          $aP[$iI][$iJ] = 0;
          }
     }


This is a snippet of my multi-dim array for working out the shortest route between 2 points.

What does your code look like?
0
 
LVL 40

Expert Comment

by:Richard Quadling
ID: 7096328
I can then access them ...

for ($iK = 0; $iK < $iN; $iK++)
     {
     for ($iI = 0; $iI < $iN; $iI++)
          {
          for ($iJ = 0; $iJ < $iN; $iJ++)
               {
               if (($aA[$iI][$iK] + $aA[$iK][$iJ]) < $aA[$iI][$iJ])
                    {
                    $aA[$iI][$iJ] = $aA[$iI][$iK] + $aA[$iK][$iJ];
                    $aP[$iI][$iJ] = $iK;
                    }
               }
          }
     }
0
 
LVL 4

Expert Comment

by:lokeshv
ID: 7097813
can u post ur code here ?


Thanks,
Lk
0
Secure Your WordPress Site: 5 Essential Approaches

WordPress is the web's most popular CMS, but its dominance also makes it a target for attackers. Our eBook will show you how to:

Prevent costly exploits of core and plugin vulnerabilities
Repel automated attacks
Lock down your dashboard, secure your code, and protect your users

 

Author Comment

by:Zaim
ID: 7097868
i'm getting my data from an oracle - database. i tried the upper solution to get data through a loop, but still the same prob: i can only get the last entry

here's my code:


     if ($flag)
     {
          //if (session_is_registered("datenarray")) session_unregister("datenarray");
          $flag=0;
          //settype($datenarray,"array");
         
          for($t=0;$t<$maxid;$t++)
          {
               
          ora_fetch($cursor);
     
          $id=ora_getcolumn($cursor,0);
               err_detect($cursor);    
          $date=ora_getcolumn($cursor,1);
               err_detect($cursor);
          $comment=ora_getcolumn($cursor,2);
               err_detect($cursor);
          $erledigt=ora_getcolumn($cursor,6);
               err_detect($cursor);
          $prio=ora_getcolumn($cursor,7);
               err_detect($cursor);
         
          $datenarray[t][0] = $id;
          $datenarray[t][1] = $date;
          $datenarray[t][2] = $erledigt;
          $datenarray[t][3] = $prio;
          $datenarray[t][4] = $comment;
         
         
          //echo $datenarray[t][0].$datenarray[t][1].$datenarray[t][2].$datenarray[t][3].$datenarray[t][4];
                                                  // ---> date i just put into the array is there
          echo "<br>";
          echo count($datenarray);          // ---> always "1"
          echo "<br>";
          //echo $id;                              //working well, id is descending, like i wanted in my query
          }
               
     }
     
     
     for($i;$i < $maxid;$i++)
          {          
         

       echo "<tr>";
     /*
       for($ij=0;$ij < 5;$ij++)
            {
          echo "<td align = 'center' valign = 'center'>".$datenarray[$i][$ij]."</td>";
          }
     */
       
      echo "<td align = 'center' valign = 'center'> <input type='submit' name = id style = 'WIDTH: 80' value=$id>".$datenarray[$i][0]."</td>";
      echo "<td align = 'center' valign = 'center'>".$datenarray[$i][1]."</td>";
      echo "<td align = 'center' valign = 'center'>".$datenarray[$i][2]."</td>";
       echo "<td align = 'center' valign = 'center'>".$datenarray[$i][3]."</td>";    
       echo "<td align = 'center' valign = 'center'>".$datenarray[$i][4]."</td>";      
     
       echo "</tr>";
     
     }
     
     echo "</table>";
     
     
?>
0
 
LVL 4

Accepted Solution

by:
lokeshv earned 50 total points
ID: 7097875
$datenarray[t][0] = $id;
$datenarray[t][1] = $date;
$datenarray[t][2] = $erledigt;
$datenarray[t][3] = $prio;
$datenarray[t][4] = $comment


i think this should be '$t' instead of just 't'

Hope this solves ur problem:o)

LK
0
 

Author Comment

by:Zaim
ID: 7097924
i'm getting my data from an oracle - database. i tried the upper solution to get data through a loop, but still the same prob: i can only get the last entry

here's my code:


     if ($flag)
     {
          //if (session_is_registered("datenarray")) session_unregister("datenarray");
          $flag=0;
          //settype($datenarray,"array");
         
          for($t=0;$t<$maxid;$t++)
          {
               
          ora_fetch($cursor);
     
          $id=ora_getcolumn($cursor,0);
               err_detect($cursor);    
          $date=ora_getcolumn($cursor,1);
               err_detect($cursor);
          $comment=ora_getcolumn($cursor,2);
               err_detect($cursor);
          $erledigt=ora_getcolumn($cursor,6);
               err_detect($cursor);
          $prio=ora_getcolumn($cursor,7);
               err_detect($cursor);
         
          $datenarray[t][0] = $id;
          $datenarray[t][1] = $date;
          $datenarray[t][2] = $erledigt;
          $datenarray[t][3] = $prio;
          $datenarray[t][4] = $comment;
         
         
          //echo $datenarray[t][0].$datenarray[t][1].$datenarray[t][2].$datenarray[t][3].$datenarray[t][4];
                                                  // ---> date i just put into the array is there
          echo "<br>";
          echo count($datenarray);          // ---> always "1"
          echo "<br>";
          //echo $id;                              //working well, id is descending, like i wanted in my query
          }
               
     }
     
     
     for($i;$i < $maxid;$i++)
          {          
         

       echo "<tr>";
     /*
       for($ij=0;$ij < 5;$ij++)
            {
          echo "<td align = 'center' valign = 'center'>".$datenarray[$i][$ij]."</td>";
          }
     */
       
      echo "<td align = 'center' valign = 'center'> <input type='submit' name = id style = 'WIDTH: 80' value=$id>".$datenarray[$i][0]."</td>";
      echo "<td align = 'center' valign = 'center'>".$datenarray[$i][1]."</td>";
      echo "<td align = 'center' valign = 'center'>".$datenarray[$i][2]."</td>";
       echo "<td align = 'center' valign = 'center'>".$datenarray[$i][3]."</td>";    
       echo "<td align = 'center' valign = 'center'>".$datenarray[$i][4]."</td>";      
     
       echo "</tr>";
     
     }
     
     echo "</table>";
     
     
?>
0
 

Author Comment

by:Zaim
ID: 7098134
i'm getting my data from an oracle - database. i tried the upper solution to get data through a loop, but still the same prob: i can only get the last entry

here's my code:


     if ($flag)
     {
          //if (session_is_registered("datenarray")) session_unregister("datenarray");
          $flag=0;
          //settype($datenarray,"array");
         
          for($t=0;$t<$maxid;$t++)
          {
               
          ora_fetch($cursor);
     
          $id=ora_getcolumn($cursor,0);
               err_detect($cursor);    
          $date=ora_getcolumn($cursor,1);
               err_detect($cursor);
          $comment=ora_getcolumn($cursor,2);
               err_detect($cursor);
          $erledigt=ora_getcolumn($cursor,6);
               err_detect($cursor);
          $prio=ora_getcolumn($cursor,7);
               err_detect($cursor);
         
          $datenarray[t][0] = $id;
          $datenarray[t][1] = $date;
          $datenarray[t][2] = $erledigt;
          $datenarray[t][3] = $prio;
          $datenarray[t][4] = $comment;
         
         
          //echo $datenarray[t][0].$datenarray[t][1].$datenarray[t][2].$datenarray[t][3].$datenarray[t][4];
                                                  // ---> date i just put into the array is there
          echo "<br>";
          echo count($datenarray);          // ---> always "1"
          echo "<br>";
          //echo $id;                              //working well, id is descending, like i wanted in my query
          }
               
     }
     
     
     for($i;$i < $maxid;$i++)
          {          
         

       echo "<tr>";
     /*
       for($ij=0;$ij < 5;$ij++)
            {
          echo "<td align = 'center' valign = 'center'>".$datenarray[$i][$ij]."</td>";
          }
     */
       
      echo "<td align = 'center' valign = 'center'> <input type='submit' name = id style = 'WIDTH: 80' value=$id>".$datenarray[$i][0]."</td>";
      echo "<td align = 'center' valign = 'center'>".$datenarray[$i][1]."</td>";
      echo "<td align = 'center' valign = 'center'>".$datenarray[$i][2]."</td>";
       echo "<td align = 'center' valign = 'center'>".$datenarray[$i][3]."</td>";    
       echo "<td align = 'center' valign = 'center'>".$datenarray[$i][4]."</td>";      
     
       echo "</tr>";
     
     }
     
     echo "</table>";
     
     
?>
0
 

Author Comment

by:Zaim
ID: 7098155
thanks for help.

that's the kind of mistakes nobody thinks to make but everyone does. there it needs 2 other eyes to look at ;)

----> it's workin'
0

Featured Post

On Demand Webinar - Networking for the Cloud Era

This webinar discusses:
-Common barriers companies experience when moving to the cloud
-How SD-WAN changes the way we look at networks
-Best practices customers should employ moving forward with cloud migration
-What happens behind the scenes of SteelConnect’s one-click button

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Password hashing is better than message digests or encryption, and you should be using it instead of message digests or encryption.  Find out why and how in this article, which supplements the original article on PHP Client Registration, Login, Logo…
This article discusses how to create an extensible mechanism for linked drop downs.
Explain concepts important to validation of email addresses with regular expressions. Applies to most languages/tools that uses regular expressions. Consider email address RFCs: Look at HTML5 form input element (with type=email) regex pattern: T…
The viewer will learn how to count occurrences of each item in an array.

717 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question