Ik heb een aantal games in een mysql (phpmyadmin) database staan met informatie (id, titel, breedte, hoogte). Deze lees ik op een pagina uit. Ik heb voor elke game een link dat verwijst naar:
game.php?id=$id (waar $id de gameid is).
Deze kan ik dmv een GET ophalen. Dat werkt ook.
Ik wil graag dat je hierdoor een game in een lijst kan zetten van je lievelingsgames van de site. Er is een pagina voor je lievelinggames en daar moeten dan de titels komen te staan.
Gebruikers kunnen NIET inloggen. Dus ik neem aan dat het via COOKIES gedaan moet worden. Of zijn er nog andere mogelijkeheden?
Mocht het met COOKIES gedaan moeten worden, hoe zet ik dan meerdere gegevens in zo'n cookie bestand? Dat is me namelijk niet gelukt.
Heeft iemand ook een idee hoe zo'n dergelijk script heet? Dan kan ik daar ook beter informatie op zoeken.
Bedankt voor de reacties! Ik zal het in ieder geval doorlezen. Maar als je zeg maar op die pagina zou komen, die game.php met het id. Wat zou ik dan precies in die code moeten zetten?
Want ik snap niet hoe het script weet dat je een 2e, 3e of meerdere games in een cookie toevoegd.
Bijvoorbeeld: je komt op:
game.php?id=23
Dan gebeurd:
setcookie("fav0","$id","time()+60*60*24*365");
(klopt die $id overigens?)
Maar als je dan naar een volgende game gaat:
game.php?id=99
voegt hij dan die game automatisch toe aan de cookie?
Of de enkele cookie gebruiken, en kijken uit hoeveel waarden je array met ID's bestaat. (Deze techniek leg ik verder uit aangezien meerdere cookies nogal omslachtig is.)
De volgende uitleg gaat er van uit dat je de cookie opslaat op mijn bovengenoemde manier, en dus ook een array aanmaakt met ID's er in. (Zoals in de vorige post uitgelegd.)
Bedankt weer voor jullie reacties! Het klopt inderdaad van dat $_GET['id'].
Ik vind je idee om een TOP 10 van favorieten best tof. Maar het gaat er eerder om dat bezoekers hun game snel terug kunnen vinden. Dat kan altijd nog later gedaan worden.
Ik begin je uitleg al een beetje te begrijpen, ik moet er nog wat mee oefenen en testen.
Maar ik begrijp nog steeds niet hoe het script weet dat je bijv. een 3e game aan je favorieten toevoegd. Kun je me dit misschien een beetje uitleggen? Ik snap nu wel ongeveer hoe je 1 game toevoegd aan je favorieten. Maar hoe gaat dat met een volgend game in de werk? Overschrijft hij dan niet dat oude Cookie?
Verdere notities:
Deze class leest dus steeds de cookie, wanneer je de functie Set($id) aan roept vraagt hij de huidige waarde van de cookie op, past deze aan en slaat hem weer op. De zelfde cookie wordt dus constant opnieuw overschreven. Omdat de lijst met recente games steeds vernieuwd wordt bij het vernieuwen van de webpagina. Verder zijn er geen extra cookies nodig, dus heb ik het zo simpel mogelijk gehouden.
Je kan alleen een game toevoegen aan de cookie wanneer de pagina nog niets naar de browser heeft verstuurd. Het moet dus voor de allereerste echo gebeuren. Dit is een eis van Cookies. Anders moet je een Database gaan gebruiken om dit bij te houden voor iedereen. (Wat enorm veel werk is. En ook nogal belastend voor je server is, wanneer er meer dan duizend mensen op gaan zitten spelen.)
Ik gebruik altijd classes, maar je moet maar zien wat je er mee wil doen. Je mag de class ook uit elkaar slopen en het ombouwen tot jouw code.
Je mag alleen niet claimen dat jij deze code geschreven hebt, wat enigszins logisch is.
Ik hoop dat ik je zo een beetje heb kunnen helpen.
PS:
Er kunnen fouten in zitten. Aangezien ik hier puur parate kennis heb gebruikt, en ik het script niet in een browser heb getest.