Avatar billede zombien Juniormester
06. oktober 2014 - 13:49 Der er 8 kommentarer og
1 løsning

Lav et multidimensionel array

Hej Eksperter

Så er jeg sørme tilbage igen :)

håber der er nogle herinde som kan hjælpe mig, sidder og er igang med at lave et multidimensionel array og kan simpelthen ikke få det til at virke :/

Vil gerne have den opretter rows ud fra mit databaseudtræk, min kode ser sådan her ud

<?php

$mitArray = array (
   
    $database['id'] = array($database['id'],$database['mail'],$database['test']);

);

?>

men hvis jeg skriver print_r($mitArray); udskriver den ingenting :/ og er sikker på den får hentet data'en fra databasen...

men er ikke som om den vil oprette mit array korrekt
Avatar billede michael_stim Ekspert
06. oktober 2014 - 14:08 #1
$mitArray = array (
   
    $database['id'] => array($database['id'],$database['mail'],$database['test']);

);

Måske
Avatar billede zombien Juniormester
06. oktober 2014 - 14:15 #2
Den har jeg skam også prøvet, men derfor kommer der stadig ikke noget ud igennem en print_r(); og hele scriptet køre igennem i tilfælde af jeg udkommentere

$mitArray = array (
   
  //  $database['id'] => array($database['id'],$database['mail'],$database['test']);

);
Avatar billede zombien Juniormester
06. oktober 2014 - 14:15 #3
men så er array jo selvfølgelig bare tom
Avatar billede zombien Juniormester
06. oktober 2014 - 14:39 #4
Okay har fundet fejlen sådan næsten, for syntes ikke selv det ikke giver ret meget mening jeg ikke må lave det trick

hvis jeg flytter

$mitArray = array (

while ( $databaseudtræk = mysql_fetch_assoc($minSQL) ) {
  $database['id'] => array($database['id'],$database['mail'],$database['test']);

}

);

Så fungere det simpelthen ikke, men vil jo gerne have den bare opretter nye rows i selve $mitArray();

så den ser sådan her ud evt.

12 => array( [0] => 12, [1] => dinmail,[2] => test),
7 => array( [0] => 7, [1] => minmail,[2] => test),
33 => array( [0] => 33, [1] => voresmail,[2] => test),
Avatar billede michael_stim Ekspert
06. oktober 2014 - 17:07 #5
Ved ikke rigtigt hvad du vil, men her er et forslag:

$mitArray = array ();

while ( $databaseudtræk = mysql_fetch_assoc($minSQL) ) {
  $mitArray = array($database['id'],$database['mail'],$database['test']);

}
Avatar billede jantzen88 Nybegynder
06. oktober 2014 - 18:34 #6
Det her skulle give samme resultat som du har skrevet

12 => array( [0] => 12, [1] => dinmail,[2] => test),
7 => array( [0] => 7, [1] => minmail,[2] => test),
33 => array( [0] => 33, [1] => voresmail,[2] => test),

$mitArray = array ();

while ( $databaseudtræk = mysql_fetch_assoc($minSQL) ) {
  $mitArray[$database['id']] = array($database['id'],$database['mail'],$database['test']);
}

#5 Husk [] i $mitArray[] ellers overskriver du den hver gang med en ny array som ikke er multidimensionel
Avatar billede zombien Juniormester
07. oktober 2014 - 10:20 #7
YES så virker det, vil du smide et svar?
Avatar billede jantzen88 Nybegynder
10. oktober 2014 - 14:07 #8
Points skal da gå til #5 for løsningen :)
Avatar billede zombien Juniormester
26. november 2014 - 14:56 #9
mangler svar
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester