Hallo lezers,
Ik heb een javascript functie die wordt geladen op de index pagina. Die kan je natuurlijk aller tijden oproepen maar het probleem is dat ik ook een $_SESSION['challenge'] nodig heb. Die vervalt na het uitloggen, dus die wordt niet opnieuw aangemaakt als ik opnieuw weer wil inloggen, tenzij ik de pagina refresh...
De pagina wil ik niet vernieuwen en het php gedeelte wordt dus niet opnieuw aangeroepen.
Hoe voeg ik regel 5 t/m 7 toe binnen een javascript functie (eventueel met AJAX?) Let op regel 23 waar de sessie wordt gebruikt. De sessie wordt nog eens gebruikt om het ontvangen wachtwoord+challenge te vergelijken met wachtwoord_database+challenge dus later heb ik die sessie weer nodig. Het moet dus echt met een php sessie...
Ik heb een javascript functie die wordt geladen op de index pagina. Die kan je natuurlijk aller tijden oproepen maar het probleem is dat ik ook een $_SESSION['challenge'] nodig heb. Die vervalt na het uitloggen, dus die wordt niet opnieuw aangemaakt als ik opnieuw weer wil inloggen, tenzij ik de pagina refresh...
De pagina wil ik niet vernieuwen en het php gedeelte wordt dus niet opnieuw aangeroepen.
Hoe voeg ik regel 5 t/m 7 toe binnen een javascript functie (eventueel met AJAX?) Let op regel 23 waar de sessie wordt gebruikt. De sessie wordt nog eens gebruikt om het ontvangen wachtwoord+challenge te vergelijken met wachtwoord_database+challenge dus later heb ik die sessie weer nodig. Het moet dus echt met een php sessie...
- <?php
- Header("content-type: application/x-javascript");
- session_start();
- require_once('../../../application/model/login/login.class.php');
- $chlng=new login();
- $chlng->setChallengeVar();
- echo "function checkForm(){\n";
- echo " valid=true;\n";
- echo " var usrid=document.getElementById('userid');\n";
- echo " if(!usrid){\n";
- echo " return;\n";
- echo " }\n";
- echo " if(!usrid.value){\n";
- echo " showError(usrid,'Enter your ID');\n";
- echo" }\n";
- echo " var psw=document.getElementById('passwd');\n";
- echo " if(!psw){return;}\n";
- echo " if(!psw.value){showError(psw,'Enter your password');}\n";
- echo " var chlng=document.getElementById('chlng');\n";
- echo " if(!chlng){\n";
- echo " return;\n";
- echo " }\n";
- echo " chlng.value=MD5(MD5(psw.value)+'".$_SESSION['challenge']."');\n";
- echo " psw.value='';\n";
- echo " return valid;\n";
- echo " }\n";
- echo " function showError(obj,message){\n";
- echo " if(!obj.errorNode){\n";
- echo " obj.onchange=hideError;\n";
- echo " var p=document.createElement('p');\n";
- echo " p.appendChild(document.createTextNode(message));\n";
- echo " obj.parentNode.appendChild(p);\n";
- echo " obj.errorNode=p;\n";
- echo " }\n";
- echo " valid=false;\n";
- echo " return;\n";
- echo " }\n";
- echo "function hideError(){\n";
- echo " this.parentNode.removeChild(this.errorNode);\n";
- echo " this.errorNode=null;\n";
- echo " this.onchange=null;\n";
- echo "}\n";
- echo "function pageload(){\n";
- echo " var W3CDOM=document.getElementById&&document.getElementsByTagName&&document.createElement;\n";
- echo " // check if browser is W3CDOM compatible\n";
- echo " if(W3CDOM){\n";
- echo " document.getElementById('loginform').onsubmit=function(){\n";
- echo " return checkForm();\n";
- echo " }\n";
- echo " }else{alert('error');}\n";
- echo "}\n";
- ?>