Avatar billede d3c Nybegynder
05. november 2006 - 15:06 Der er 2 kommentarer og
1 løsning

Liste billeder efter key

Hej eksperter,

Jeg har et svært spørgsmål, som jeg ikke selv har kunne finde svar på. Sagen er den, at jeg kører et billedgalleri. I den forbindelse skal jeg kunne slette midt inde i en billedserie, og herefter vil filnavnene ikke liste korrekt længere.

Derfor valgte jeg at indsætte samtlige filnavne i en MySQL-database som PHP derefter lister efter. PHP skal dermed liste efter array key, og ikke value (value er lig med billednavnet). Lige i øjeblikket gør jeg følgende for at finde de nuværende billeder:

$sql = $this->Query("SELECT img FROM imageStorage WHERE pid='$this->pid'");
while($sql = $this->fetch_row($sql)){
$img[] = $data[0];
}

Hermed har jeg et $img-array, som indeholder alle de nuværende billeder. Problemet opstår så, når brugeren skal til at kunne gå frem og tilbage i billederne. I øjeblikket prøver jeg (virker ikke, hvis man sletter et billede midt i det hele) at bruge følgende metode til at bladre i billederne:

function nextImg($current,$images){
//Næste billede må være +1
  $next = $current+1;

//Hvis billedet eksisterer i array, returner det
  if(isset($images[$next])){
  return $images[$next];
  } else {
//Hvis ikke, må vi være ved slutningen og dermed starte forfra
  return $images[0];
  }
}

function prevImg($current,$images){
//Forrige billede er -1
  $prev = $current-1;
  if(isset($images[$prev])){
// Returner billedet, hvis det eksisterer
  return $images[$prev];
  } else {
// Hvis ikke, er vi ved slutningen og dermed starter man fra det højeste billede
    $total = count($images)-1;
  return $images[$total];
  }
}

Jeg håber I forstår mig, og har en løsning på problemet. Spørg endelig hvis I ikke gør.
Avatar billede d3c Nybegynder
05. november 2006 - 16:03 #1
Ok, jeg fandt selv ud af det. Grunden til det ikke virkede var, at jeg lavede noget rod med $images[] osv.
Avatar billede l3kris Nybegynder
05. november 2006 - 16:05 #2
while ($array = each($images))
{
$current_img = $array[‘value’];
return $current_img;
}

... eller noget i den stil.
Avatar billede l3kris Nybegynder
05. november 2006 - 16:05 #3
ok - så sparede du de points :)
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

IT-JOB

Forsvarsministeriets Materiel- og Indkøbsstyrelse

Senior Data Engineers til dataplatform i Forsvaret

Capgemini Danmark A/S

AI/Data Engineer

Forsvarsministeriets Materiel- og Indkøbsstyrelse

Cyberdivisionen søger leder til Lokal IT Servicecenter i Holstebro

Forsvarsministeriets Materiel- og Indkøbsstyrelse

Vil du være med til at opbygge og udvikle Forsvarets dronekapacitet?