login  Naam:   Wachtwoord: 
Registreer je!
 Forum

teller doet raar

Offline Yourgamecrew - 20/12/2011 20:13 (laatste wijziging 20/12/2011 20:14)
Avatar van YourgamecrewLid hoi,
Ik heb nu een soort teller maar hij doet heel raar. Hij hoort per keer +1 te doen en dat doet hij ook wel maar alleen als ik de naam van de sessie verander. Hij doet het dan 1 keer goed en daarna lijkt het alsof hij het aantal bij elkaar optelt. Dus de eerste keer ga ik bijv. tot de 5 maar de volgende keer dat ik het doe telt hij die 5 op bij de 1, en als ik het dan nog een keer doe met bijv 6 telt hij die 6 bij die 5 en 1 op. Help me plz! Dit is het script wat ik gebruik:

  1. if(!isset($_SESSION['tel']))
  2. {
  3. $_SESSION['tel'] = 1;
  4. }
  5.  
  6. else
  7. {
  8. $_SESSION['tel'] = $_SESSION['tel'] +1;
  9. }
  10.  
  11. if ($_SESSION['tel']<$sommen)
  12.  
  13. {
  14. print($_SESSION['tel']);
  15. }
  16. else
  17. {
  18. print("KLAAR!")
  19. }

10 antwoorden

Gesponsorde links
Offline vinTage - 20/12/2011 21:26
Avatar van vinTage Nieuw lid Je moet de session gewoon resetten dan he..

  1. if(voorwaarde)
  2. {
  3. //reset de session waarde
  4. }
Offline Yourgamecrew - 20/12/2011 21:36 (laatste wijziging 20/12/2011 21:50)
Avatar van Yourgamecrew Lid als ik dat doe dan doet hij het niet meer
Offline vinTage - 20/12/2011 21:51
Avatar van vinTage Nieuw lid Komop, doe eens wat moeite om te zeggen wat het niet meer doet en wat het exact zou moeten doen ipv heel de tijd je post te editten zodat die bovenin blijft staan...
Offline Yourgamecrew - 20/12/2011 22:17
Avatar van Yourgamecrew Lid als ik de sessie reset oftewel: unset ($_SESSION['tel']; dan wordt er helemaal niks meer weergeven.
Offline WouterJ - 20/12/2011 22:19
Avatar van WouterJ HTML gevorderde Zet eens dit op regel 1:
  1. ini_set('display_errors', 'On');
  2. error_reporting(E_ALL | E_NOTICE);

En los eens de errors op die je krijgt.

Of kijk zelf eens logisch naar de code die je geeft en beslis zelf wat er fout aan is...
unset($_SESSION['tel'];
Offline vinTage - 20/12/2011 22:19 (laatste wijziging 20/12/2011 22:21)
Avatar van vinTage Nieuw lid
  1. if(voorwaarde)
  2. {
  3. echo $_SESSION['meuk']; //eerst echoen
  4. unset(...);
  5. //of $_SESSION['meuk'] = 1;
  6. }



edit n.a.v WouterJ's post: oh, het ging over een foutmelding, zeg dat dan 
Offline Yourgamecrew - 20/12/2011 22:21 (laatste wijziging 20/12/2011 22:27)
Avatar van Yourgamecrew Lid het ging helemaal niet over een foutmelding het deed het gewoon niet dus ik denk dat wouter mijn verhaal verkeerd begrepen heeft 

EDIT: Als ik het goed begrijp hoort het dus zo:

  1. if(!isset($_SESSION['tel']))
  2. {
  3. $_SESSION['tel'] = 1;
  4. echo $_SESSION['tel'];
  5. unset($_SESSION['tel']);
  6. }
  7.  
  8. else
  9. {
  10. $_SESSION['tel'] = $_SESSION['tel'] +1;
  11. }
  12.  
  13. if ($_SESSION['tel']<$sommen)
  14.  
  15. {
  16. print($_SESSION['tel']);
  17. }
  18. else
  19. {
  20. print("KLAAR!")
  21. }
Offline vinTage - 20/12/2011 22:29 (laatste wijziging 20/12/2011 22:33)
Avatar van vinTage Nieuw lid
Yourgamecrew schreef:
het ging helemaal niet over een foutmelding het deed het gewoon niet dus ik denk dat wouter mijn verhaal verkeerd begrepen heeft 

EDIT: Als ik het goed begrijp hoort het dus zo:

if(!isset($_SESSION['tel']))
{
$_SESSION['tel'] = 1;
echo $_SESSION['tel'];
unset($_SESSION['tel']);
}

else
{
$_SESSION['tel'] = $_SESSION['tel'] +1;
}

if ($_SESSION['tel']<$sommen)

{
print($_SESSION['tel']);
}
else
{
print("KLAAR!")
}


..nee lees je regels 1 tm 5 eens GOED...dan zie je (hopelijk) zelf dat dat voor geen meter klopt.

Voor zover ik je post denk te begrijpen wil je zo iets:

  1. if(geen session)
  2. {
  3. //start session
  4. }
  5. else
  6. {
  7. //bestaande session waarde ophogen
  8. }
  9.  
  10. if(session waarde gelijk is aan 'iets')
  11. {
  12. //toon dat het afgerond is adhv iets met je waardes
  13. //reset
  14. }
  15. else
  16. {
  17. //volgende stap
  18. }
Offline Yourgamecrew - 20/12/2011 22:39 (laatste wijziging 20/12/2011 22:51)
Avatar van Yourgamecrew Lid Ja en nee. Het is zeg maar een teller die de progrssie in vragen bijhoud bij een rekentrainer. Dit staat in 1 php bestand zodat het zichzelf de hele tijd kan herhalen als je een antwoord op een som hebt gegeven. Wat ik nu dus probeer te doen (wat mij niet lukte vandaar deze topic) dat je begint met 'vraag 1 van -gekozen aantal vragen-' en na het invullen van die vraag er komt te staan: vraag 2 van -enz.-

Edit: het is dus zeg maar zo dat if session tel < aantal sommen dan wordt het genereren van een som uitgevoerd en anders ben je klaar.
Offline vinTage - 20/12/2011 22:51 (laatste wijziging 21/12/2011 00:26)
Avatar van vinTage Nieuw lid omg 

ALS ik je bovenstaande post goed gelezen/begrepen heb, ben je wel heel erg op een foute manier bezig..

Hoe ik (heelsnellehardopdenkmodus enabled) het ongeveer zou doen (in EEN bestand):

start een session (pogingen) met waarde 0
start een session (opgelost aantal) met waarde 0

maak een array met vragen
$vragen = array('1+5=', '9 gedeeld door 3=", "etc");
$antwoorden = array(6, 3, "etc");

Na submit vergelijk je de array vraag met het antwoord (de index haal je op uit de session opgelost aantal)
Na elke submit verhoog je sowieso het aantal pogingen, en als de indexes matchen verhoog je ook 'opgelost aantal'

Als er een match is, doe je een header location naar de volgende vraag.
Controleren of iemand speelt met de url, doe je dmv de 'vraag index' uit de url, te vergelijken met het session pogingen aantal, als dat onjuist is, terug redirecten naar de juiste index +1



edit:
Het wordt niet op prijs gesteld als ik hapklare code geef, maar hier een voorbeeldje van mn bovenstaande reactie.

edit2:
Als je ?code meegeeft in de url zie je hoe ik het doe.
sub edit: wtf is dit voor ingewikkeld gedoe...soms is hapklare code veel beter dan domme hints @ sertain mod 
Gesponsorde links
Je moet ingelogd zijn om een reactie te kunnen posten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.402s