Gå til innhold

Fjerne ellement fra array


Anbefalte innlegg

Skrevet

Hei. Jeg har da et array med en rekke ranger og skal fjerne dette etterhvert som dem blir skrevet ut. Men det funker ikke. Noen som kan forklare hvorfor ?

 

<?php
$rang = array("admin", "crew", "filsjef");
while($array = mysql_fetch_array($query)){
$brukerrang = $array["rang"];
$info = $array["info"];
if(in_array($brukerrang,$rang){
   echo "<b>$brukerrang</b>";
   unset($rang[$brukerrang]);
}
echo $info;
}
?>

 

meningen er at jeg skal bare skrive ut de forskjellige rangene bare en gang..

Videoannonse
Annonse
Skrevet (endret)

Problemet ditt er at du prøver å bruke $brukerrang (som ikke er numerisk) som referanse i arrayet ditt. Der du skulle brukt f.eks. unset($rang[1]); bruker du unset($rang['en eller annen rang']);.

 

Satt meg ikke helt inn i situasjonen din her, men du kan enten a) bruke en korrekt numerisk referanse, eller b) bruke egenlagde indekser ved å gjøre noe alá dette: $rang = array('admin' => 'admin', 'crew' => 'crew', 'filsjef' => 'filsjef');

 

Hvis det her ikke gav noe særlig mening, kan du ta en var_dump($rang); og var_dump($brukerrang); der hvor du prøver å unsette.

Endret av gozzer
Skrevet

takk for all hjelp. problemet lå i arrayet. Men nå funker det fin fint. Så nå har dere spart meg for ca 1000 linjer kode. Ikke spørr hvorfor. Dem som har drevet med noe slikt skjønner sikkert..

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...