Toon posts:

[PHP] database info linkable maken?

Pagina: 1
Acties:
  • 29 views sinds 30-01-2008

Verwijderd

Topicstarter
Ik zit met het volgende probleem;

Ik heb een pagina waar data uit een database wordt gehaald, het gaat bijvoorbeeld om de laatste 3 toegevoegde mededelingen die worden getoond. Dit werkt verder goed, maar ik wil het het mogelijk maken deze mededelingen klikbaar te maken en te linken naar het specifieke bericht van die mededeling. Deze moet op een andere pagina worden geopend. De gegevens staan in dezelfde tabel, dus datum, onderwerp en bericht.

Stel je ziet dit

10-01-05 Test mededeling blabla....
10-10-05 TESTTEST

Als je nu op 1 van de 2 mededelingen klikt (alleen het onderwerp, niet de datum) dan moet hij naar een nieuwe pagina linken met de gegevens van die mededeling (complete bericht). Ik maak gebruik van een mysql database.

Het gaat hier NIET om een script request maar om advies op de manier waarop dit mogelijk gemaakt kan worden.

Helup! >:)

  • Erkens
  • Registratie: December 2001
  • Niet online

Erkens

Fotograaf

ehm, gewoon:

HTML:
1
2
10-01-05 <a href="url naar je script">Test mededeling blabla....</a>
10-10-05 <a href="url naar je script">TESTTEST</a>


waarbij je de pk meegeeft in de url, beetje erg basic vind je niet 8)7

[ Voor 15% gewijzigd door Erkens op 20-05-2005 09:53 ]


Verwijderd

Topicstarter
Erkens schreef op vrijdag 20 mei 2005 @ 09:52:
ehm, gewoon:

HTML:
1
2
10-01-05 <a href="url naar je script">Test mededeling blabla....</a>
10-10-05 <a href="url naar je script">TESTTEST</a>


waarbij je de pk meegeeft in de url, beetje erg basic vind je niet 8)7
Je begrijpt het niet helemaal 8)7

Die waarde moet dus op een 1 of andere manier meegegeven worden (het onderwerp) zodat op de volgende pagina mbv een query dezelfde mededeling kan worden geselecteerd.

  • semicolon
  • Registratie: Mei 2004
  • Niet online
Hebben je items een ID? Dan is het toch een kwestie van een linkje bij de titel "lezen.php?id=12", en op lezen.php haal je het item met ID 12 eruit.

-edit
Mocht je geen ID willen gebruiken hiervoor -al zou ik geen idee hebben waarom- zou je misschien de titel en datum in een md5-hash kunnen zetten, en dan die meegeven. En op de pagina om het bericht te lezen een query uitvoeren zoals:
SELECT `titel`,`bericht` FROM `berichten` WHERE MD5( CONCAT(`datum`,`titel`) ) = 'deontvangenhash';

Dit heb ik verder niet getest ofzo, maar zou volgens mij wel mogelijk moeten zijn. Al zal het met een ID iets fijner werken :)

[ Voor 65% gewijzigd door semicolon op 20-05-2005 10:00 ]

:D/-<


Verwijderd

Topicstarter
Max v W schreef op vrijdag 20 mei 2005 @ 09:56:
Hebben je items een ID? Dan is het toch een kwestie van een linkje bij de titel "lezen.php?id=12", en op lezen.php haal je het item met ID 12 eruit.
ja, de items hebben een id, maar hoe weet je nou welk ID je op deze manier moet linken, omdat de gegevens uit de database worden gehaald kun je niet HARD vastleggen dat een specifiek ID gelinked moet worden.

[ Voor 3% gewijzigd door Verwijderd op 20-05-2005 10:01 ]


  • NMe
  • Registratie: Februari 2004
  • Laatst online: 15-04 22:07

NMe

Quia Ego Sic Dico.

Zie Erkens en Max v W. Dit is toch wel erg basic, en bovendien zie je het op zo'n beetje elke site die met PHP gemaakt is wel. Je geeft de URL door op de manier die Max v W noemt, en vraagt in het script zelf (de pagina waar de link naartoe gaat) het ID op, dat je binnen krijgt met de $_GET-array. Zie ook deze pagina uit de manual. :)
Verwijderd schreef op vrijdag 20 mei 2005 @ 10:00:
[...]


ja, de items hebben een id, maar hoe weet je nou welk ID je op deze manier moet linken, omdat de gegevens uit de database worden gehaald kun je niet HARD vastleggen dat een specifiek ID gelinked moet worden.
Dat heeft er niets mee te maken, ook dat ID haal je gewoon uit de database. ;)

[ Voor 33% gewijzigd door NMe op 20-05-2005 10:02 ]

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.

Pagina: 1

Dit topic is gesloten.