ik heb nu het script van geloof ik aar...

en daar stel je als je inlogt bijvoorbeeld 5 minuten in...
dan log je in...
maar na daadwerkelijk 5 minuten logt hij uit...
is eigelijk goed...
maar eigelijk wil ik het hebben na 5 minuten inactiviteit...
dus iedere keer als er geklikt wordt dat het dan geupdate wordt...

hoe kan ik dit gemakelijk veranderen?

hier een stukje code:


// Start here the login action, and make the random hash
if(($_SERVER['REQUEST_METHOD'] == "POST") && ($_POST['login'])) {
     $selectleden = mysql_query("SELECT * FROM $ledentabel WHERE username = '".sqlsafe($_POST['username'])."' AND password = '".sqlsafe(md5($_POST['password']))."'");
     if(mysql_num_rows($selectleden)) {
                                      // Ingelogd
									  $ip=$_SERVER['REMOTE_ADDR'];
                                      $hash = md5(uniqid(rand(), true));
                                      $get_id = mysql_query("SELECT id FROM ".$ledentabel." WHERE username = '".sqlsafe($_POST['username'])."' AND password = '".sqlsafe(md5($_POST['password']))."'");
                                      mysql_query("UPDATE leden SET active=1 WHERE username='".sqlsafe($_POST['username'])."'"); 
									  $fetch_id = mysql_fetch_assoc($get_id);
                                      $insert_session = mysql_query("INSERT INTO sessions (id, userid, hash, logintime, ip) VALUES ('','".$fetch_id['id']."','".$hash."',NOW(), '".$ip."')");

                                      // for debugging:
                                      #$bericht = "Ingelogd met hash: ".$hash." En je hebt id-nummer:".$fetch_id['id'];


                                      if ($insert_session) {
                                         setcookie ("id", $fetch_id['id'],time()+$_POST['sessiontime']);
                                         setcookie ("hash", $hash,time()+$_POST['sessiontime']);
                                         header('location:menu.php');
                                                           } else {
                                                           echo "Fout in de query: ".mysql_error();
                                                           exit();
                                                           }
                                      }  else {
                                      // Foute pass
                                      $bericht = "<b>Je inloggegevens komen niet overeen met wat in de database staan.</b>";
                                      }

als je firefox gebruikt dan kan je de fout console (extra -> foutconsole) raadplegen om te zien of er javascript fouten zijn

overgens is het niet echt nodig om in de updatetime.php zoveel te echo'en gezien de gebruiker die pagina toch niet ziet (javascript bezoekt hem tenslotte, niet de gebruiker)
firefox gedownload,
daar werkt het script wel gewoon in...

hoe is dit mogelijk?

staat javascript in internet explorer uit?

en ik merk wel dat hij heeeeeel langzaam gaat typen :P

weet je zo ook hoe ik hem iets kan wijzigen waarna hij hem alleen maar met bijvoorbeeld 'a' update...

dat scheelt een heel hoop dataverkeer?
Wellicht je 'onkeypress'-event aanpassen, en pas een verzenden als er wordt gesubmit.
nee want dan ben ik weer terug bij af he :P

het gaat er dus om dat de sessie niet kan verlopen als mijn 'collega's 'hier aan het typen zijn...

kan ik er dus nu voor zorgen bijvoorbeeld als er op a,e wordt gedrukt dat hij dan het script gaat uitvoeren...?
ja, ik zag dat je bij het googlen van een onkeydown de key-codes had gevonden (ze stonden nog in je script) daarmee kan je controleren of er een a is ingetypt en zo ja, dan kan je nu verder

internet explorer en firefox gaan allebei anders met javascript om, maar als je dat gefixed wilt hebben dan moet hier iemand op reageren die meer verstand van javascript heeft dan ik (A)
deze code werkt perfect:


<script type="text/javascript" language="javascript">
<!--
function update_status(){

  var xmlhttp = new XMLHttpRequest();
  xmlhttp.open("GET", "updatetime.php", false);
  xmlhttp.send(null);

}
-->
</script> 


maar omdat ik juist wil dat het script uitgevoerd wordt als ik bijvoorbeeld alleen een a type...

heb ik er dit van gemaakt:
maar deze werkt niet...


<script type="text/javascript" language="javascript">
<!--
function update_status(){
if( key == 'a'){
  
  var xmlhttp = new XMLHttpRequest();
  xmlhttp.open("GET", "updatetime.php", false);
  xmlhttp.send(null);
	}
	ELSE
	{
	alert("hoi");
  }
-->
</script> 


ook wordt javascript nog niet uitgevoerd in internet explorer...
wel in firefox en chroom...
waaran licht dit dan?
en wat moet ik veranderen
is er iemand die hier mij wat mee kan helpen?
Waar haal je 'key' nu weer vandaan dan?

key == null.

if (null == a) {
//dus niet
}
dat weet ik ook niet,,

hij werkt ook niet...

key dacht ikdat gewoon ingegeven werst op toetsenbord...

inderdaad, je moet de key code eerst opvangen, dat deed je (dacht ik) met de event van javascript (ook iets waar IE en FF verschillend over denken) dit is makkelijk te vinden op google als je zoekt op javascript keycode event (oid)

Reageren