Data selecteren uit database

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Aya Azumi

Aya Azumi

21/09/2010 18:11:54
Quote Anchor link
Hallo,

Ik vroeg mij af...

Als ik een database zou hebben met landen (id - land - landnr - iets anders) en ik wil dat mijn script een loop maakt met 1 type land (b.v. gewoon nederland). Hoe vraag je dat dan aan?

Ik ben beginnend in php en was hiermee aan het spelen, maar kom er helaas niet uit.
Zijn er simpele oplossingen hiervoor?

Gr,

Aya

Topic titel aangepast. Kies in het vervolg zelf een duidelijke titel.[/modedit]
Gewijzigd op 21/09/2010 21:28:09 door Joren de Wit
 
PHP hulp

PHP hulp

03/12/2021 08:47:37
 
SilverWolf NL

SilverWolf NL

21/09/2010 18:15:01
Quote Anchor link
Wat heb je al? Zonder code is het voor ons moeilijk te beoordelen wat er gebeuren moet. Wat bedoel je met een loop? Wat wil je voor elkaar krijgen?
 
Carlo boy

Carlo boy

21/09/2010 18:15:55
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php
$sql
= "SELECT * FROM landen WHERE land='nederland'";
$query = mysql_query($sql);
while($row = mysql_fetch_array($query))
{

echo 'id: '.$row['id'].', land: nederland, landnr'.$row['landnr'];
}

?>


niet getest, maar zo moet je het aanpakken
 
Aya Azumi

Aya Azumi

21/09/2010 18:18:38
Quote Anchor link
>_< Das bijna te simpel..... Thanks Carlo Boy, Daar was ik al de hele middag zoet mee... op zoek naar een oplossing......
Zo simpel.....
 
Carlo boy

Carlo boy

21/09/2010 18:26:42
Quote Anchor link
Iedereen moet beginnen, ik was nog veel erger dan jij.
 
- SanThe -

- SanThe -

21/09/2010 18:33:23
Quote Anchor link
Kwestie van handleidingen lezen lijkt mij.
Zie eens op www.phptuts.nl.
 
Aya Azumi

Aya Azumi

21/09/2010 19:02:50
Quote Anchor link
oke, dat heb ik werkend gekregen, maar als je nu een keer een lijst wilt maken van alle namen die er in staan... maar dat wil je maar 1 keer... bv

Nederland
België
Duitsland
Frankrijk
Engeland

Hoe zou ik dat moeten doen?
 
- SanThe -

- SanThe -

21/09/2010 19:27:28
Quote Anchor link
De WHERE verwijderen.
 
Aya Azumi

Aya Azumi

21/09/2010 19:31:10
Quote Anchor link
Dan zet hij toch alles neer... als je 10 keer NL er in zou hebben, zet hij het toch 10 keer neer?
 
SilverWolf NL

SilverWolf NL

21/09/2010 19:34:32
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php
$sql
= "SELECT DISTINCT land FROM landen";
$query = mysql_query($sql);
while($row = mysql_fetch_array($query))
{

echo 'id: '.$row['id'].', land: nederland, landnr'.$row['landnr'];
}

?>
 
- SanThe -

- SanThe -

21/09/2010 19:37:59
Quote Anchor link
Aya Azumi op 21/09/2010 19:31:10:
als je 10 keer NL er in zou hebben, zet hij het toch 10 keer neer?


Dan denk ik eerder aan een fout datamodel.
 
Ferry d

ferry d

21/09/2010 21:49:26
Quote Anchor link
Gebruik deze sql:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
SELECT * FROM landen ORDER BY land
 
Joren de Wit

Joren de Wit

21/09/2010 22:37:48
Quote Anchor link
Aya Azumi op 21/09/2010 19:31:10:
als je 10 keer NL er in zou hebben, zet hij het toch 10 keer neer?

Zoals SanThe al zegt: dat kan niet kloppen. Je bent nu data dubbel aan het opslaan en dat betekent in 9 van de 10 gevallen dat je datamodel niet klopt. Doorloop het proces van normaliseren om zo tot een correct datamodel te komen.

De query met DISTINCT die gegeven wordt, zal wel werken maar is waarschijnlijk niet meer dan een lapmiddel. Los liever de echte fout (je incorrecte datamodel) op ;-)
 
Aya Azumi

Aya Azumi

22/09/2010 08:29:55
Quote Anchor link
Bedankt voor de reacties,

Het is even een oefen/leer scriptje voor mij. Als je b.v met iets andes zou doen, zegmaar muziek, heb je verschillende genres;

rock, pop, classic, ect.

dan staat het waarschijnlijk er ook meerdere keren in.
En als je een lijst wil laten zien van de genres moet dat kunnen. Het werkte idd met distinct... thanks....

Bedankt voor de hulp!
 
- SanThe -

- SanThe -

22/09/2010 08:42:44
Quote Anchor link
Aya Azumi op 22/09/2010 08:29:55:
rock, pop, classic, ect.

dan staat het waarschijnlijk er ook meerdere keren in.


Nee, ook dan normaliseren.
 
Aya Azumi

Aya Azumi

22/09/2010 08:43:48
Quote Anchor link
Hoe bedoel je?

Hoe zou je dat dan doen moeten?
 
- SanThe -

- SanThe -

22/09/2010 14:44:16
Quote Anchor link
Klik op de link van Blanche.
 
Joren de Wit

Joren de Wit

22/09/2010 14:49:25
Quote Anchor link
Aya Azumi op 22/09/2010 08:43:48:
Hoe zou je dat dan doen moeten?

Het wordt direct duidelijk als je die normaliseren tutorial leest. Maar in dit geval zou je dan een aparte tabel krijgen om de genres in op te slaan:

genres
-----
id
genre

songs
-----
id
title
genre_id

Vervolgens kom je op het punt dat een song meerdere genres kan hebben, in dat geval introduceer je een koppeltabel. Maar daarover kun je alles lezen in de genoemde tutorial.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.