variable database selecteren

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Philippe Mes

Philippe Mes

13/08/2007 15:22:00
Quote Anchor link
Goedenamiddag,
Na het onclickprobleem van daarnet stoot ik weer tegen een ander probleem.
Ik heb dus een invulformulier gemaakt waar ik uit verschillende landen kan kiezen uit de verschillende werelddelen.
Dit doormiddel van een select box.
Nu de landen stellen in men mysql de tabellen voor van de databese en de werelddelen stellen de databases voor.
alles naar een database sturen lukt me wel maar als ik moet beginnen kiezen uit verschillende databases begint het wat moeilijker te worden.
Weet iemand raad.

Alvast bedankt
 
PHP hulp

PHP hulp

22/11/2024 06:47:58
 
PHP erik

PHP erik

13/08/2007 15:27:00
Quote Anchor link
Als ik het zo hoor dan moet je echt normaliseren. Want verschillende databases gebruiken voor verschillende werelddelen dat is echt absurd..
 
Philippe Mes

Philippe Mes

13/08/2007 15:35:00
Quote Anchor link
ok bedankt ik zal eens kijken hoe ik dit dan het beste kan doen door te normaliseren.
 
Frank -

Frank -

13/08/2007 15:41:00
Quote Anchor link
Mocht je de tutorial nog niet hebben gevonden, hier is ie dan: link

Vergeet niet de huidige opzet in zijn geheel weg te gooien, dat gaat namelijk helemaal fout.
 
Philippe Mes

Philippe Mes

13/08/2007 15:50:00
Quote Anchor link
Die had ik al gevonden toch bedankt.
Gewijzigd op 01/01/1970 01:00:00 door Philippe Mes
 
Philippe Mes

Philippe Mes

13/08/2007 15:57:00
Quote Anchor link
Even een vraagje,
hier gaat men tot de derde normaalvorm.
als ik het goed heb bedoelen ze hiermee : eerst de database - dan de tabel - en dan de velden van de tabel.
Of zit ik fout.
 
PHP erik

PHP erik

13/08/2007 16:00:00
Quote Anchor link
Databases hebben er niets mee te maken. Je moet alles binnen één database doen. Dat is ook wat ik probeerde te zeggen.
 
Philippe Mes

Philippe Mes

13/08/2007 16:06:00
Quote Anchor link
Ja eerst de database 1 dus dan verschillende tabellen en in de verschillende tabellen verschillende velden.
 
PHP erik

PHP erik

13/08/2007 16:09:00
Quote Anchor link
Ja dat is wel de bedoeling ja
 
Philippe Mes

Philippe Mes

13/08/2007 16:15:00
Quote Anchor link
ja dat is ook wat ik doe maar dan krijg ik niet alles in die ene database.
Eerst kies ik een werelddeel dan een land en als ik het land gekozen heb kan ik weer gegevens invullen zoals straatnaam,telefoonnummer,... .
Dus dan zou ik zoiets moeten maken vb:

database : wereld
tabel : europa
veldnaam : belgië

Ok en dan zit ik vast

moeten nog andere gegevens bevatten. moet ik mss deze in een andere tabel plaatsen en die 2 tabellen met elkaar laten communiceren?
 
Frank -

Frank -

13/08/2007 16:17:00
Quote Anchor link
Philippe schreef op 13.08.2007 16:06:
Ja eerst de database 1 dus dan verschillende tabellen en in de verschillende tabellen verschillende velden.
Nee, ga normaliseren. Daarmee bepaal je de soorten data en de onderlinge relaties tussen de data.

Uiteindelijk kom je tot een datamodel, maar zover ben je nog lang niet. Vergeet even dat je een database met tabellen en records gaat aanmaken, ga eerst normaliseren. Ga vooral NIET in tabellen en kolommen denken, dat is de grootste fout die je kunt maken tijdens het normaliseren.

Edit:
Quote:
database : wereld
tabel : europa
veldnaam : belgië

Nee dus.

Er bestaat geen tabel Europa, Europa is een werelddeel. Je kunt dus wel een tabel 'werelddelen' hebben met daarin het record 'europa'. Zo kun je ook tabel 'landen' hebben, met bv. Nederland en China. Nederland koppel je met een foreignkey aan het werelddeel Europa en China wordt gekoppeld aan Azië. Hier heb je dus te maken het de datasoorten 'werelddelen' en 'landen'.
Gewijzigd op 01/01/1970 01:00:00 door Frank -
 
Philippe Mes

Philippe Mes

13/08/2007 16:18:00
Quote Anchor link
Ok ik zal het proberen ik laat wel iets weten als het lukt.
 
Philippe Mes

Philippe Mes

14/08/2007 09:28:00
Quote Anchor link
Goedendag,
Ik heb gisteren die tutorial doorgenomen en heb een aantal zaken opgezocht.
Nu ik heb geprobeert zo'n databasemodel te maken.
Hieronder het databasemodel.



Tabelnaam Werelddelen
Tabelveld Werelddeel
record Europa
record Azië
record Oceanië
record Afrika
record Noord-Amerika
record Latijns-Amerika

Tabelnaam Landen
Tabelveld Land
Record België
Record Nederland
Record ...

Tabelnaam Gegevens
Tabelveld ID
Tabelveld Naam
Tabelveld Stad
Tabelveld Straat
Tabelveld Nr
Tabelveld Postcode
Tabelveld Telefoonnummer
Tabelveld Gsm 1
Tabelveld Gsm 2
Tabelveld Faxnummer
Tabelveld Email
Tabelveld Website



Nu mijn vraag : Is dit een goed databasemodel of is dit totaal fout.
 
TJVB tvb

TJVB tvb

14/08/2007 09:59:00
Quote Anchor link
Het is meestal wel handig om je werelddelen en landen ook een id te geven. Dan kun je ze ook koppelen
Je krijgt dan meer dit:

Tabelnaam Werelddelen
Tabelveld id
Tabelveld Werelddeel
record 1,Europa
record 2,Azië
..

Tabelnaam Landen
Tabelveld id
Tabelveld land
Tabelveld werelddeel
record 1,België,1 //belgie ligt in europa dus werelddeel 1 (want europa heeft id 1)

Tabelnaam Gegevens
Tabelveld ID
Tabelveld Naam
Tabelveld Stad
Tabelveld Land //dit is het id van het land, dit had je er nog niet in staan maar is wel handig.
Tabelveld Straat
Tabelveld Nr
Tabelveld Postcode
Tabelveld Telefoonnummer
Tabelveld Gsm 1
Tabelveld Gsm 2
Tabelveld Faxnummer
Tabelveld Email
Tabelveld Website

Eventueel kun je steden (en straten) ook nog in losse tabellen zetten maar dan is het de vraag hoever je wilt gaan.
 
Philippe Mes

Philippe Mes

14/08/2007 10:03:00
Quote Anchor link
Bedankt.
 
Frank -

Frank -

14/08/2007 11:58:00
Quote Anchor link
De landen zou ik ook hun iso-code meegeven, die wordt ook veel gebruikt. Bv. 'nl' voor Nederland en 'be' voor België.

Adressen kennen naast de straatnaam en het huisnummer ook nog een extensie, bv. Straatnaam 3 a. Daar heb je dus 3 velden voor nodig, jij hebt er slechts 2.

Afhankelijk van het land, is het ook gebruikelijk om de staat/provincie op te slaan. Dit ontbreekt in zijn geheel.

Wat ook nog ontbreekt, en niet onbelangrijk is, zijn de datatypes die je moet gaan gebruiken. Besteed hier de nodige aandacht aan, anders loopt de boel nog in het honderd. Dit geldt ook voor het instellen van de foreignkey's.

Ps. Een land kan in meerdere werelddelen liggen, je hebt dus een koppeltabel nodig tussen de tabel 'werelddelen' en 'landen'.

Pps. Weet je zeker dat je per persoon slechts 1 adres gaat opslaan? Ik beschik bv. al over 5 adressen...
Gewijzigd op 01/01/1970 01:00:00 door Frank -
 
Philippe Mes

Philippe Mes

04/09/2007 10:00:00
Quote Anchor link
Hey,
Allereerst srry dat ik dit toppic evn terug bovenhaal,
Maar ik zit nog met wat vragen in verband met men databasemodel.

Ik heb geprobeert het uit te werken op papier
en dit is het resultaat geworden :

Database Karting

Tabel Werelddelen
2 velden

Veld ID
Type : INT
Length : 11
Attributes : unsigned
Extra : auto_increment
Primary key

Veld Werelddeel
Type : varchar
Length : 150

Storage engine : InnoDB

Tabel Landen
3 velden

Veld ID
Type : INT
Length : 11
Attributes : unsigned
Extra : auto_increment
Primary key

Veld Werelddeel
Foreignkey

Veld Land
Type : varchar
Length : 150

Storage engine : InnoDB

Tabel Gegevens
14 velden

Veld ID
Type : INT
Length : 11
Attributes : unsigned
Extra : auto_increment
Primary key

Veld Land
Foreignkey

Veld Naam
Type : varchar
Length : 100

Veld ...

Storage engine : InnoDB

Nu de vragen :
1 : Is dit goed uit gewerkt.
2 : Als ik dit in mysql invoer via phpmyadmin hoed kan ik dan zo een foreignkey instellen. Die vind ik namelijk niet.

Dit zijn de twee belangrijkste vragen die ik heb op dit moment.

Alvast heel erg bedankt.
 
Frank -

Frank -

04/09/2007 11:15:00
Quote Anchor link
1) Wanneer jij alle data kunt opslaan en alle relaties worden correct vastgelegd, dan lijkt het datamodel wel goed te zijn. Dat kun je testen.
2) Leer SQL! PMA is slechts een tooltje en nog een vrij beroerde ook nog... FK's kun je instellen via
- selecteer tabel
- ga naar het tabblad 'structuur'
- klik op de link 'Relatie overzicht'

Maar schrijf in het vervolg je eigen SQL, daar leer je veel meer van en je kunt de boel veel beter onderhouden. Er zijn dan geen beperkingen meer die door de tool worden opgelegd.
 
Philippe Mes

Philippe Mes

04/09/2007 11:21:00
Quote Anchor link
Heel heel erg bedankt,
Ik ga zodadelijk eens kijken voor een boek over sql zodat ik me daar wat in kan verdiepen.
 



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.