Unfortunitaly, somehow it doesn't really work for me.
I really need to get this work with both GET and POST variables, because my site basicly switches pages using this script. If anyone can't be able to use forms in my site, there'll be no point of that site's existence.
I have attached codes that i've tried so far.
Any help will be highly apprecieted! Thanks.
Here're main AJAX codes:
Code:
<script type="text/javascript">
/***********************************************
* Dynamic Ajax Content- © Dynamic Drive DHTML code library (www.dynamicdrive.com)
* This notice MUST stay intact for legal use
* Visit Dynamic Drive at http://www.dynamicdrive.com/ for full source code
***********************************************/
var loadedobjects=""
var rootdomain="http://"+window.location.hostname
function ajaxpage(url, containerid,method){
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
document.getElementById(containerid).innerHTML='<img src="images/loader.gif"> <span class="th">Loading...</span>'
page_request.onreadystatechange=function(){
loadpage(page_request, containerid)
}
if(method=='POST'){
page_request.open('POST', url, true)
page_request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
var pineapple = document.getElementById("formID").elements;
for(var i = 0; i< pineapple.length; i++) page_request.send(pineapple[i].name + "=" + pineapple[i].value);
}else{
page_request.open('GET', url, 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
}
}
}
</script>
If you've noticed, i added loading stuff in there. So when i run whole thing, it's just "Loading..." stuff appears all the time with error message at status bar.
Anyway,Here's how i call function to use it:
Code:
<?php
echo $_GET['var'];
echo $_POST['mn'];
echo $_POST['bb'];
?>
<form id="formID" action="javascript:ajaxpage('whatsup/news.php?var=1','contentarea','POST');" method="post">
<input type="text" name="mn" id="mn">
<input type="submit" name="bb" id="bb">
</form>
Again, please help out! I did a lot of search and saw some posts in this forum but none of them were helpful. I only need this script to work with both GET and POST vars, otherwise i'll have to change my whole site and that's not possible.
Thanks in advance.
Bookmarks