login  Naam:   Wachtwoord: 
Registreer je!
 Forum

herladen (Opgelost)

Offline W0etah - 24/02/2007 00:18
Avatar van W0etahPHP beginner Hallo, ik heb nu een ratingsysteem gemaakt waarbij je maar 1 keer zou mogen stemmen, nu zit ik met een probleem.

Na het klikken op de "stem" knop komt de score er wel bij, maar je kan nog is stemmen.

Daarom zou ik willen dat de pagina helemaal herlaad na het klikken.

Heeft iemand een idee hoe ik dit kan doen?

Met header("Location: ") werkt het niet.

5 antwoorden

Gesponsorde links
Offline marten - 24/02/2007 00:21
Avatar van marten Beheerder en waarom werkt het met header location niet? Krijg je dan een headers already sent error?
Offline W0etah - 24/02/2007 00:24
Avatar van W0etah PHP beginner nee, dat had ik al opgelost met ob_start();

volgens mij licht het probleem dat bij het laden van de pagina de div waarin de vakjes staan om te stemmen wordt hij onzichtbaar gemaakt (display: none), als je op een link klikt wordt hij weer zichtbaar gemaakt (display: block)

ik klik op de knop om te stemmen, de div wordt terug onzichtbaar, je kan hem terug openen en nog is stemmen, dan pas komt er dat je al gestemt hebt.


ps: de site staat niet online dus ik heb geen voorbeeld
Offline Nrzonline - 24/02/2007 00:35
Avatar van Nrzonline PHP ver gevorderde Ik snap niet precies hou jouw systeem in elkaar zit, en hou je bij houd welke gebruikers gestemd hebben in jouw poll. Enkel het onzichtbaar maken van een vakje is niet genoeg. Dan zul je jouw formulier kunne faken mbv een extern bestand. Maar om te voorkomen dat een gebruiker nog kan gaan stemmen, kan je hierbij je database goed gebruiken. Zorg dat het ip of gebruikersID van de bezoeker gelogged wordt in je script. Hiermee kan je controleren of de gebruiker gestemd heeft, en je vakje onzichtbaar maken. Zorg er daarna voor dat je query ook beveiligd wordt met een controle of de gebruiker al gestemd heeft. Als je dit niet doet, is je pollformulier te faken.
Offline W0etah - 24/02/2007 00:38 (laatste wijziging 24/02/2007 08:41)
Avatar van W0etah PHP beginner euhm, ik ga dit proberen goed uit te leggen.

Je komt op de site, je kiest de website waarop je wilt stemmen, dan zie je informatie staan, hoeveel punten hij op dat onderwerk heeft.

Dan staat er een link, als je daarop klikt komen de vakjes tevoorschijn om te stemmen.

Als je stemt (je drukt op een knop dan), dan gaan die vakjes terugweg, maar de pagina herlaad niet, dat gebeurt pas als je nog is op die knop drukt.

Bij het drukken van die knop wordt de score in de database gezet, ook je ip en het id van de site waarop je gestemt hebt.

Het probleem is gewoon dat de pagina direct moet herladen nadet er op de knop gedrukt is.

edit

het is opgelost, na wat zoekwerk, als ik gewoon header("Location: stats.php") gebruikte, kwam ik op een lege pagina uit, ik heb dan maar gewoon header("Location: #") gebruikt en dan werkte hij perfect^^
Offline Meaux - 24/02/2007 14:12
Avatar van Meaux Nieuw lid Je kan het beste nadat hij heeft gestemd opnieuw de gegevens opvragen uit de database. Dan zijn de gegevens geüpdate, en dan weet je scriptje dat hij niet nog eens mag stemmen..

of als je je pagina wilt herladen doe je dit:
echo "<meta http-equiv='refresh' content='0'> ";
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.223s