Jump to content

JS fails if url has a GET


EchoFool

Recommended Posts

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?

Link to comment
Share on other sites

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.