Een vraagje. Wat ik nu wil maken is een pagina waarop de gebruiker een overzicht kan maken van zijn favoriete websites.
Nu heb ik een form met 2 invulvelden.
Eerste invulveld is de naam van de website.
en de tweede daar vult de gebruiker de link in.
Vervolgens zou ik willen dat deze site toegevoegd word in de databasetabel met de ID van de gebruiker.
Dus stel de ID van de gebruiker is 2. Dan zou ik willen dat de website (dus de gegevens uit de form) toegevoegd worden aan databasetabel '2'. Maar dat als de ID 3 is, de website (met de gegevens uit de form) toegevoegd word aan databasetabel '3'.
Desnoods ipv de ID, de naam van de gebruiker als naam van de databasetabel.
Je zou ook een kolom user_id kunnen introduceren in die tabel, dan kun je volstaan met één tabel.
Vervolgens kun je alle links van een gebruiker opvragen middels die kolom.
En als je InnoDB gebruikt wordt deze kolom automatisch geïndexeerd (mits je user_id kolom een foreign key is naar je user tabel, wat uit oogpunt van structuur wel een zinnig plan is).
Ik snap uiteraard dat van elke gebruiker een databsetabel maken niet handig is.
Maar hoe sla ik een rij linkjes op bij een specifieke gebruiker, en zorg ik ervoor dat ik op de site de sites van die specifieke gebruiker kan ophalen.
De database in site ziet er nu zo uit.
De database heet AIN. Daarin zit een tabel Users met de kolommen: Username, Password, ID & websites.
Inmiddels heb ik het voor elkaar dat hij de websites weergeeft in tabel, alleen dan in 1 vak naast elkaar, ipv 1 vak per website. Hoe krijg ik dat voorelkaar?
Hij weergeeft alle websites die ik op een rijtje in een longtext heb gezet, naast elkaar in 1 vakje van het tabel. Wat ik wil is dat hij per vakje 1 website weergeeft.
Leesfout oid van mijn kant.
Inmiddels, volgensmij tenminste, is het opgelost.
Ik heb een tabel gemaakt genaamd Websites met Naam, URL en id.
Vervolgens een site gemaakt waarop de gebruiker een website kan toevoegen, door middel van oa een form waarin de gebruiker de naam van de site en de URL invult. Vervolgens komt er in de tabel "Websites" de website die ingevuld is te staan met onder id, het id van degene die de website toegevoegd heeft.
Waarschijnlijk lukt het nu alsnog het goed te weergeven op de site.
Het is sowieso een goede gewoonte om elk record (elke tabel-regel) te identificeren met een uniek id, zodat je hier aan kunt refereren.
Daarnaast is het een goede gewoonte om kolomnamen een omschrijvende naam te geven, zodat je kolomnamen zelf-documenterend zijn.
Dat gezegd hebbende, is de kolomnaam id, die als doel heeft om aan te geven van welke gebruiker deze is, te vaag.
Ik zou twee dingen doen:
- de tabel voorzien van een auto_increment id
- de kolom id hernoemen naar user_id of iets soortgelijks, zodat de functie hiervan direct duidelijk is