EchoFool Posted December 10, 2009 Share Posted December 10, 2009 Hey I have a JS script which loads the contents of a page into a <div> which works until i start using GETs in the urls... as it doesn't process the ruls so now im stuck as to how alter the script to get it to work.. this is what i got: This is the html the user iteracts with: <a href="javascript:ajaxpage(login.php','contentarea');">Link to login</a> <div id="contentarea">;</div> var bustcachevar=1 //bust potential caching of external pages after initial request? (1=yes, 0=no) var loadedobjects="" var rootdomain="http://"+window.location.hostname var bustcacheparameter="" function ajaxpage(pagename, containerid){ var page_request = false if (window.XMLHttpRequest) // if Mozilla, Safari etc page_request = new XMLHttpRequest() else if (window.ActiveXObject){ // if IE try { page_request = new ActiveXObject("Msxml2.XMLHTTP") } catch (e){ try{ page_request = new ActiveXObject("Microsoft.XMLHTTP") } catch (e){} } } else return false page_request.onreadystatechange=function(){ loadpage(page_request, containerid) } var url = rootdomain + "/jax.php"; if (bustcachevar) //if bust caching of external page bustcacheparameter=(url.indexOf("?")!=-[[1]])? "&"+new Date().getTime() : "?"+new Date().getTime() page_request.open('GET', url+bustcacheparameter + "&link=" + pagename, true) page_request.send(null) } function loadpage(page_request, containerid){ if (page_request.readyState == 4 && (page_request.status==200 || window.location.href.indexOf("http")==-1)) document.getElementById(containerid).innerHTML=page_request.responseText } function loadobjs(){ if (!document.getElementById) return for (i=0; i<arguments.length; i++){ var file=arguments[i] var fileref="" if (loadedobjects.indexOf(file)==-1){ //Check to see if this object has not already been added to page before proceeding if (file.indexOf(".js")!=-1){ //If object is a js file fileref=document.createElement('script') fileref.setAttribute("type","text/javascript"); fileref.setAttribute("src", file); } else if (file.indexOf(".css")!=-1){ //If object is a css file fileref=document.createElement("link") fileref.setAttribute("rel", "stylesheet"); fileref.setAttribute("type", "text/css"); fileref.setAttribute("href", file); } } if (fileref!=""){ document.getElementsByTagName("head").item(0).appendChild(fileref) loadedobjects+=file+" " //Remember this object as being already added to page } } } This php script is called in the javascript to process the url: <?php function getParm ($parmName) { $retParm = null; if(isset($_POST[$parmName])) { $retParm = $_POST[$parmName]; } else { if(isset($_GET[$parmName])) { $retParm = $_GET[$parmName]; } } return ($retParm); } $link = getParm("link"); include($link); ?> If i have gets in the html then the GETs don't get parsed through and there fore don't load, how can i solve this? Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.