Vraagje beste php'ers,

Ik heb een tabel die freq heet. Ik heb daar een kolom die description1 heet.
In die kolom staan een aantal keer dezelfde waarden.

Een voorbeeld:
peer
peer
appel
peer


Mijn vraag is: Hoe krijg ik die waarden maar 1x in een keuzemenu (<option>). Dus maar 1x peer in plaats van 3x peer?

Alvast bedankt,
PH-MJS

SELECT
  DISTINCT(description1)
FROM
  freq

Verder heb ik mijn twijfels over het databasemodel. Een kolomnaam als 'description1' suggereert dat er ook een 'description2' is. Of zelfs nummer 3, 4, 5, etc. Als dat het geval is, ga dan nog eens normaliseren.
SELECT DISTINCT description1 FROM freq;

btw. Dubbele waarden duiden vaak op een slecht opgezet database model. Heb je je database genormaliseerd?

edit: lol percies dezelfde posts ongeveer. Frank volgensmij hoeven die ( ) niet om die kolom naam heen. Dat is alleen met functies als SUM, COUNT, AVG()
Ik ben een database aan het maken voor mijn scanner zeg maar om daarin de frequenties in op te slaan. Zo heb je bijvoorbeeld Luchtvaart, openbaar vervoer enz.

Door die waarde mee te geven in de tabel moest het volgens mij mogelijk zijn om bijvoorbeeld alleen de luchtvaartfrequenties te tonen.

het kan dus met SELECT FROM freq WHERE description1 = 'schiphol'

Maar ik kwam op het idee om dat via een keuzemenu te doen. Ik krijg het alleen nog niet voor elkaar.

Ik heb nu het volgende:
<?
$sql = 'SELECT DISTINCT description1 FROM freq';
$query1 = mysql_query($select);
$list1 = mysql_fetch_object($query1);

echo '<form>';
echo '<select>' . $list1->description1 . '</select>';
echo '</form>';

?>

Wat gaat er hier fout?

Alvast bedankt voor de reacties die al gepost waren!!

PH-MJS
<?
$sql = 'SELECT DISTINCT description1 FROM freq';
$query1 = mysql_query($select);

echo '<form>';
echo '<select>';
while($list1 = mysql_fetch_object($query1))
{
echo '<option>'.$list1->description1.'</option>';
}
echo '</select>';
echo '</form>';

?>
Bedankt voor de reactie. Ik krijg nu inderdaad keurig een keuzemenu maar nu staan er een x aantal dezelfde waarden in.

Is dat ook nog op te lossen?
<?
$sql = 'SELECT DISTINCT description1 FROM freq';
$query1 = mysql_query($sql);

echo '<form>';
echo '<select>';
while($list1 = mysql_fetch_object($query1))
{
echo '<option>'.$list1->description1.'</option>';
}
echo '</select>';
echo '</form>';

?>

Dit zou al beter moeten werken.
is het dan niet toevallig toch DISTINCT(description1) ??
HEEL HEEL HEEL HARTELIJK BEDANKT.

Het Werkt

PH-MJS
Offtopic: Hoe zit het met het databasemodel? Hoe heb je genormaliseerd? Mocht je dat (nog) niet hebben gedaan, dan kan je dat nog een hoop problemen gaan opleveren.

Verder vraag ik me af hoe het kan dat je dezelfde waarde meerdere keren in dezelfde tabel hebt staan en of dat wel wenselijk is.
Frank,

Door meerdere dezelfde waardes in een kolom op te nemen kan ik bepaalde rijen tonen.

Een voorbeeld. Je hebt niet alleen schiphol toren maar ook shiphol departure, schiphol arrival, schiphol ground, enz, enz.

Door het woord schiphol in meerdere rijen op te nemen in dezelfde kolom kan ik dus schiphol scheiden van de andere frequenties zoals Dutch mil info enz. enz..

Ik hoop dat ik duidelijk genoeg ben geweest.

PH-MJS

Reageren