Avatar billede hmm10 Nybegynder
11. august 2004 - 13:28 Der er 8 kommentarer og
1 løsning

fra mysql til array()

Hej

Jeg har et almindeligt udtræk fra mysql. Det jeg vil er at lave udtrækket om til en array, som jeg kan hente en enkel forkomst ud; fx. $test[2] henter 3. forkomst ud osv.

Men hvordan?

Dette er sikkert et simplet spørgsmål, men jeg kan ikke få ideen frem til en løsning.
Avatar billede henrik_r Nybegynder
11. august 2004 - 13:33 #1
Hmm... Kan laver på flere måder.. Man kunne f.eks. gemme det i en tekst-boks i mysql som:
id = 1
tekst = "udtræk1-udtræk2-udtræk3-udtræk4"

Derefter vil koden være:

doDB(); // Din funktion der connecter til MySQL
$sql = "select tekst from tabel where id=1";
$res = mysql_query($sql);
$streng = mysql_result($res,0,'tekst');
$ditarray = explode("-",$streng);

Herefter vil: $ditarray[0] være lig udtræk1 osv.

Håber du kan bruge det til noget.. Garanterer ikke at det er den nemmeste måde, men vil mene det virker :)

Men kan kunne jo også bare lave en tabel hvor man havde navnet, og et nummer, og så sammensætte en funktion der trak det nummer ud du vil have.

Håber du kan forstå det og bruge det.

M.v.h.

Henrik Rasmussen
Avatar billede hmm10 Nybegynder
11. august 2004 - 13:40 #2
Tja, expolde kune bruges:

      while($hent = mysql_fetch_array($hentdet)) {
        $test .= $hent[DET].'-';
      }
     
      $test = explode('-',$test);
      echo $test[2];
Avatar billede detox Nybegynder
11. august 2004 - 13:43 #3
Jeg tror det du tænker på er sådan her:

$res = mysql_query("select * from tabel");
while ($row = mysql_fetch_assoc($res)) {
  $arr[] = $row;
}

Så ligger hele udtrækket i arrayet $arr og kan hentes med fx:

echo $arr[2]['tekst'];
Avatar billede Slettet bruger
11. august 2004 - 13:44 #4
Du laver dit udtræk vha. mysql_query. Efterfølgende laver du en while-løkke der stopper alle oplysninger i et array:

$sql = "SELECT * FROM tabel"";
$res = mysql_query($sql);

$i=0;
while ($row_query = mysql_fetch_assoc($res)))
  {
    $ditarray[$i] = $row_query['feltnavn'];
    $i++;
  }

Jeg har forstået spørgsmålet således at du har en række poster i din tabel, og hver post vil du gerne have i et array?

Har du flere felter til en post, kan du gøre bruge følgende:
    $ditarray[$i]['feltnavn1'] = $row_query['feltnavn1'];
    $ditarray[$i]['feltnavn2'] = $row_query['feltnavn2'];
Etc....
Avatar billede Slettet bruger
11. august 2004 - 13:45 #5
detox...> Smart... Så lærte jeg også lidt i dag... Vidste ikke man kunne undvære tællere :o)
Avatar billede hmm10 Nybegynder
11. august 2004 - 13:46 #6
Det var nu ikke så advanceret.. undskyld, hvis jeg ikke formulerede mig bedre.. jeg har fået løst mit problem.. Det var henrik_r der fik mine grå celler til at virke igen. Vil du have lidt points henrik_r?
Avatar billede detox Nybegynder
11. august 2004 - 13:55 #7
Ja, så forstod jeg alligevel ikke spørgsmålet rigtigt ;o)
kfisker -> Ja, uden tæller klarer den selv arbejdet.
Avatar billede henrik_r Nybegynder
11. august 2004 - 13:55 #8
Hehe.. Det var så lidt.. Det er lige meget med pointene
Avatar billede hmm10 Nybegynder
11. august 2004 - 14:02 #9
Som du vil. Takker for deltagelsen.
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