Avatar billede whyme Nybegynder
23. januar 2005 - 13:23 Der er 5 kommentarer og
2 løsninger

Hjælp med at lave et array. Det burde være simpelt

Hej eksperter, jeg har følgende kode:

// image libraries
$imglibs = array(
  array(
    'value'  => '/images/1/',
    'text'    => 'Billede mappe 1',
  ),
  array(
    'value'  => '/images/2/',
    'text'    => 'Billede mappe 2',
  ),
);

Denne kode virker helt fint, men nu vil jeg gerne lave sådan en array dynamisk ud fra en mysql tabel, og jeg har prøvet følgende som ikke virker:

// image libraries
include ($_SERVER[DOCUMENT_ROOT]. "inc/mysql.inc.php");
$get = mysql_query("SELECT * FROM pages ORDER BY page_id ASC");
while ($row = mysql_fetch_array($get)) {
$kant .= "array('value' => '/images/$row[page_id]/','text' => '$row[pagename]'),";
}
$imglibs = array($kant);

Jeg synes at den kode burde ligne præcis den anden kode, bare dynamisk. Mapperne er de rigtige, variablen $row[page_id] er "1" og $row[pagename] er "Test".

Kan en er jer hjælpe mig med at få min "dynamiske" array til at virke, som den normale array?

På forhånd rigtig mange tak
Avatar billede stalle Nybegynder
23. januar 2005 - 15:29 #1
Det der undre mig er at du vil komme det hele i et nyt array, da du jo til at starte med henter det hele ud i et array fra mysql databasen (mysql_fetch_array)
Avatar billede whyme Nybegynder
23. januar 2005 - 15:54 #2
stalle:
Jeg ved ikke om jeg har gjort noget forkert med min kode, men mit mål er at få fra databasen ud, så det vil virke på samme måde som

// image libraries
$imglibs = array(
  array(
    'value'  => '/images/1/',
    'text'    => 'Billede mappe 1',
  ),
  array(
    'value'  => '/images/2/',
    'text'    => 'Billede mappe 2',
  ),
);

Den kode jeg har lavet, er den måde jeg har prøvet, og jeg har ingen idéer til at prøve at ændre i noget, har ændret meget og kan ikke fatte hvorfor min kode ikke virker. Har du en idé?
Avatar billede stalle Nybegynder
23. januar 2005 - 17:59 #3
okay - jeg formoder at det er noget galleri du er ved at lave.
Så i stedet for at lave det med de ekstra array's, så hvorfor ikke bare gøre sådan her:

<?php
include ($_SERVER[DOCUMENT_ROOT]. "inc/mysql.inc.php");
?

<table>
  <?php
  $get = mysql_query("SELECT * FROM pages ORDER BY page_id ASC");

  while ($row = mysql_fetch_array($get)) {
?>
<tr>
  <td>
  <img src="/images/".<?=$row[page_id];?>>
  </td>
</tr>
<tr>
  <td>
  <?=$row[pagename];?>
  </td>
</tr>
<?php
}
?>
</table>
Avatar billede whyme Nybegynder
23. januar 2005 - 18:34 #4
Jeg søger ikke alternative metoder, det er meget vigtigt at det bliver lavet på samme måde som:

// image libraries
$imglibs = array(
  array(
    'value'  => '/images/1/',
    'text'    => 'Billede mappe 1',
  ),
  array(
    'value'  => '/images/2/',
    'text'    => 'Billede mappe 2',
  ),
);

Bare dynamisk.

Dette er ikke et galleri, det er til en wysiwyg editor, som benytter noget billede værk osv. og det er vigtigt at det er på samme måde koden er, da jeg ikke kan gå igang med at redigere i alle funktionerne som er i systemet.

Det er en god nok idé du giver, men jeg burde lige have sagt at det er meget vigtigt at det udskrives på den måde jeg skrev, bare dynamisk. Kan du hjælpe mig der? Jeg sætter points dobbelt op.
Avatar billede stalle Nybegynder
23. januar 2005 - 19:50 #5
hmm - kan ikke sådan lige gennemskue det, men kigger da lige lidt videre på det
Avatar billede whyme Nybegynder
23. januar 2005 - 20:51 #6
Okay mange tak
Avatar billede whyme Nybegynder
24. januar 2005 - 15:49 #7
Har fundet en løsning ;)
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
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

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