Gå til innhold

Flere samme rows i sql, skal bare ha en av hver


Anbefalte innlegg

Skrevet

Hei,

 

Jeg driver å lager et slags dokumentsystem.

 

Jeg skal ha en funksjon som henter ut alle mappenavnene som fins i databasen;

Filnavn: 1 mappenavn: test

Filnavn: 2 mappenavn: test

Filnavn: 3 mappenavn: test

 

Jeg skal så ha en select-sak med dropdown over mappene som man kan laste opp filer i ( er også mulighet til å lage ny mappe)

 

<select id="folderselect" name="folderselect">
<option value="new" selected="true">en ny mappe:</option>
<?php $this->getAllFolders(); ?>	  
</select>

 

$this-getAllFolders(); under:

 

function getAllFolders()
{
$query 	= "SELECT folder FROM documents";
$result = mysql_query($query);
while($row = mysql_fetch_assoc($result))
{
echo "<option value=\"".$row['folder']."\">".$row['folder']."</option>";
}
}

 

Problemet er da at jeg får en dropdown med samme mappenavnet 5 ganger nedover.

Er det noen som vet hvordan jeg kunne limite slik at den looper ut bare en gang per mappenavn?

Videoannonse
Annonse
Skrevet

Annet spørsmål: Kan man bruke strrpos til å lagre alt før "." i en string?

 

Har $size som blir 234.9832490234 f.eks. Vil lagre bare 234 i databasen.

Skrevet

Dette kan du få til på primært to måter; en ved å behandle det som en string og en ved å behandle det som en float-verdi.

 

<?php

$size = 234.9832490234;
echo intval ( $size );

$size = '234.9832490234';
echo substr ( $size, 0, strpos ( $size, '.' ) );

?>

Skrevet

Vet ikke hva slags størrelse tallet representerer, men ville ikke standard avrunding vært bedre? Ikke at det passer til alle sammenhenger..

Skrevet

OP bør kanskje også tenke på å normalisere databasen. da slipper du å skrive kode for å fjerne gjentagelser av data. med andre ord ha en separat tabell for mappenavn og referer til mappenavnene i filnavntabellen med en id.

 

mapper:

id int primary key auto increment

mappenavn varchar

 

filer:

id int primary key auto increment

mappe_id int

filnavn varchar

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å
×
×
  • Opprett ny...