ورود

View Full Version : اشکال در satstus برای ajax



lizbazar
دوشنبه 17 فروردین 1388, 20:54 عصر
چرا مقدار status از xmlhttp من مقدارش صفر هست همش؟



<script type="text/javascript">
var xmlhttp = false;
try {
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (E) {
xmlhttp = false;
}
}
if (!xmlhttp && typeof XMLHttpRequest != 'undefined') {
xmlhttp = new XMLHttpRequest();
alert ("You are not using Microsoft Internet Explorer");
}
function makerequest(serverPage, objID) {
var obj = document.getElementById(objID);
xmlhttp.open("GET", serverPage);
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4) {
obj.innerHTML = xmlhttp.responseText;
alert (xmlhttp.status );
}
}
xmlhttp.send(null);
}
//-->
</script>


متشکر

lizbazar
پنج شنبه 20 فروردین 1388, 21:06 عصر
چرا status مقدار 200 نمیگیره ؟؟؟

raravaice
پنج شنبه 20 فروردین 1388, 21:59 عصر
اگر 200 نمیگیره معلوم هست که برنامه سمت سرور شما واقع در serverpage یا وجود نداره یا به درستی کار خودش رو انجام نمیده که از روی شماره میشه بهش پی برد.
404 : صفحه وجود نداره
403 : permission لازم وجود نداره
ایرادهای 500 هم که مربوط به باگ در برنامهیه سمت سرور شماست.

در کل نوع کد نویسی شما برای هندل کردن ajax عاری از مشکل نیست.
جستجو کنید ، نمونه کدهای بهتر با کارایی بیشتری دوستان در همین سایت ذکر کرده اند.

موفق باشید

kavoshgar63
جمعه 21 فروردین 1388, 01:28 صبح
من برای برنامه ثبت نظرات در سایتم از این تکه کد استفاده کردم و جواب گرفتم هم توی موزیلا کار کرد و هم توی اکسپلورر


//Define Your browser
var XMLHttpRequestObject = false;
try {
XMLHttpRequestObject = new ActiveXObject("MSXML2.XMLHTTP");
} catch (exception1) {
try {
XMLHttpRequestObject = new ActiveXObject("Microsoft.XMLHTTP");
} catch (exception2) {
XMLHttpRequestObject = false;
}
}
// agar browser ro nashnakht
if (!XMLHttpRequestObject && window.XMLHttpRequest)
{
XMLHttpRequestObject = new XMLHttpRequest();
}
// End Of Define Your Browser


var pageurl = "inc/commentsave.php?";
var http= XMLHttpRequestObject;





var count=1;
//ba'd az 10 sanie peygham hazf mishe
function hidemsg()
{
var obj = document.getElementById('divcomment');
if(count == 10)
{
obj.value="";
obj.style.visibility="hidden";
obj.style.height="0px";
}
count++;
}

function Answer1()
{
if(XMLHttpRequestObject.readyState == 4 && XMLHttpRequestObject.status == 200)

{

var obj = document.getElementById('divcomment');
r = http.responseText;
obj.innerHTML=r;
document.getElementById('CommentBox_email').value="";
document.getElementById('CommentBox_matn').value="";
document.getElementById('CommentBox_name').value="";
document.getElementById('CommentBox_url').value="";
window.setInterval("hidemsg();",1000);
//document.getElementById("tfname").value = r;
}
}



// in code ro rooye rooydad onclick button mizarid.
function getandgive()
{
if(http)
{
var objgif = document.getElementById('commentdivgif');
objgif.style.visibility="visible";
var comment=document.getElementById("CommentBox_matn").value;
var c1="comment=";
var param1 =c1+comment ;
var c2="&name=";
var c3="&url=";
var c4="&email=";
var param2=c2+document.getElementById("CommentBox_name").value;
var param3=c3+document.getElementById("CommentBox_url").value;
var param4=c4+document.getElementById("CommentBox_email").value;

http.open("GET", pageurl+param1+param2+param3+param4, true);
objgif.style.visibility="hidden";
var obj = document.getElementById('divcomment');
obj.style.height="auto";
obj.style.visibility="visible";
http.onreadystatechange = Answer1;
http.send(null);
}
}
//end getandgive End of Ajax




یه قسمتهاییش برای گرفتن اطلاعات از صفحه است من با فرض این که شما ای جکس رو تا اندازه ای بلدین کد رو دستکاری و تمیز کاریش نکردم
اگر احیانا جاییش محل سئوال بود توضیح بدم.

lizbazar
شنبه 22 فروردین 1388, 06:35 صبح
با تشکر . همان طور که عرض کردین ، مشکل در serverpage بود که با آپلود در یک هاست درست حسابی ، درست شد .