Database inrichten, ID's en het opmaken ervan

Status
Niet open voor verdere reacties.

Egel007

Gebruiker
Lid geworden
4 dec 2007
Berichten
271
Beste forummers!

Sorry voor mijn vele vragen, echt waar, mijn excuses.
Maargoed, ik ben inmiddels weer wat verder gekomen met mijn website. Nogmaals dank voor de informatie voor het maken van een log in systeem voor de admin.

Ik heb index.php een link staan naar games.php. Hier moeten straks de laatste aan de site toegevoegde games komen te staan, met daarvoren een aantal links (0-9, A, B, C, enz.). Hoe ik dat precies moet gaan doen, is me nog niet helemaal duidelijk, maar ik heb besloten met de database te beginnen.
Kan ik de database het beste op deze manier inrichten?
Database Games --> Tabellen 0-9, A, B, C, etc. --> velden over informatie van de game (waarvan id de naam van de game is?).

Verder, mijn hoofdvraag ging hoofdzakelijk over de ID's en het opmaken ervan.
Als ik namelijk straks een database heb (zoals bijvoorbeeld hierboven ingericht) en mijn id is bijvoorbeeld alone-in-the-dark (whatever haha). Hoe krijg ik dan dat ID op mijn site te zien? Hoe moet ik die link in HTML maken?

Bovendien heb ik op school geleerd dat ik dus in PHPMyAdmin door middel van 'Invoegen' dus tekst kan toevoegen aan de pagina. Maar hoe kan ik dit dan opmaken met een stylesheet bijvoorbeeld? Want op mijn computer staat in dat geval geen bijvoorbeeld id=alone-in-the-dark.php.

Echt supertof als ik weer van die snelle reactie's krijg als bij mijn vorige posts en dat de hulp weer fantastisch is!
Groeten! :thumb:
 
De indeling van de tabellen zou ik niet doen als 0-9,A,B,C,etc

Er is namelijk geen wezenlijk verschil tussen een game die met de letter A begint, of een game die met de letter F begint. Maak dus gewoon 1 tabel "games" aan en houd het daarbij. Je applicatie kan dan per letter de games ophalen door te kijken wat de eerste letter van de titel is.

Je ID is een gewoon een getal dat automatisch oploopt (auto_increment) en dient alleen voor het identificeren van games, meer niet.

Je kunt in PHP verbinding maken met je database en informatie ophalen (zie mysql_query() en aanverwante functies op php.net). daar kun je dus ook de lijst met games ophalen. Vervolgens kun je die zelf opmaken in HTML, via je PHP script.

Ik zou beginnen met even een schema aanmaken in phpMyAdmin, en vervolgens te proberen om verbinding te maken met de database en de gegevens op te halen... als je dat voor elkaar hebt kunnen we je wel helpen met het op de juiste manier tonen denk ik ;)

Succes :)
 
Thanks voor de hulp!
Volgens mij begrijp ik het.

Ik moet dus een database aanmaken met de naam games, waarvan de tabel bijvoorbeeld game is. Velden id, naam, tekst, bla, bla, nog geen idee welke verdere artikelen ik hierbij wil dumpen.

Vervolgens gewoon op games.php de nieuwe toegevoegde games op de voorpagina (gesorteerd op alfabet met behulp van PHP). En daarboven links met 0-9, A, B, etc.
Wanneer iemand dan naar die pagina gaat, een lijst met alle games laten verschijnen die beginnen met die letter (sorteren op beginletter ook met PHP).

En wanneer iemand dan op een game klikt, eerst linken naar bijvoorbeeld gamedetails.php (die standaard stylesheet heeft) en dan daarin het betreffende id echo'en?
 
Ongeveer, behalve dat ik het zoeken van games die beginnen met een bepaalde letter door SQL zou laten doen (dan hoef je niet de hele lijst op te halen maar krijg je automatisch de relevante resultaten terug)

Daarnaast moet je, als je op een link klikt, doorlinken naar (bijv.) gamedetails.php?id=1 zodat je op je gamedetails.php pagina ook weet welke ID de gebruiker heeft opgevraagd.
Je kunt variabelen in de URL uitlezen, die komen in de $_GET array terecht.
 
Ongeveer, behalve dat ik het zoeken van games die beginnen met een bepaalde letter door SQL zou laten doen (dan hoef je niet de hele lijst op te halen maar krijg je automatisch de relevante resultaten terug)

Je kunt variabelen in de URL uitlezen, die komen in de $_GET array terecht.

Wat bedoel je precies met deze twee zinnen?
Het doorlinken begrijp ik, dus in principe begrijp ik het grootste gedeelte al, haha.

Hoe moet ik het sorteren door middel van SQL doen? Daar heb ik zover ik weet nog helemaal geen verstand van. :P
 
Laatst bewerkt:
Oké, oké, oké.
Dus in het geval van 0-9 wordt het dus (even jouw code overgenomen, voor het idee):
PHP:
SELECT *
FROM games
WHERE SUBSTR(veld, 0, 1) = '0, 1, 2, 3, 4, 5, 6, 7, 8, 9'
?

Ik zal meteen even de bijgevoegde link bekijken die je me hebt aanbevolen.
 
In mysql begint substr te tellen vanaf 1, dus SUBSTR(veld, 1, 1). Verder is de opmaak van de query iets anders:
[sql]SELECT *
FROM games
WHERE SUBSTR(titel, 1, 1) in ('0', '1', '2', '3', '4', '5', '6', '7', '8', '9')
order by titel asc[/sql]
 
Oeps mijn fout, ik heb nog niet eerder SUBSTR in SQL gebruikt :+

Moet mijn eigen links dus beter lezen.
 
Voorzie altijd een timestamp Zodat je altijd de ouderom van de informatie kan zien
zo kan je ook tijdens een selectieve backup maken.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan