با سلام
من روی یک کد ajax کار می کنم که باید یک فایل php رو از یه آدرس دیگه (سایت دیگه) بخونه و محتویاتش رو نمایش بده.
کد چیز پیچیده ای نداره. اما برای توضیح بگم که new XDomainRequest برای خواندن محتوای فایل از راه دور برای IE هستش و برای اینکه روی فایرفاکس هم جواب بده در داخل فایل php یک هدر با نام و مقدار:
[JSS]Access-Control-Allow-Origin: *[/JSS] نوشتم. تا اینجاش برای هم IE و هم firefox , Chrome,apple safari کار میکنه اما برای opera هر کاری میکنم نمیشه! دوستان یه کمکی بکنید و منو راهنمایی کنید. کلی تو اینترنت گشتم اما برای اپرا جوابی پیدا نکردم.
مرسی
کد صفحه اصلی:
[HTMLS]<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>TEST</title>
<style type="text/css">
#RES0{font:9pt/12pt Verdana; color:#656588;}
</style>
</head>
<body>
<div><b>Results:</b><br/> <div id="RES0"> </div></div><hr size="1" />
<script>
function callBackFun(val){
document.getElementById('RES0').innerHTML=val;
}
/*------------------*/
function newpostReq(url)
{
var xmlhttp;
if (window.XDomainRequest)
{
xmlhttp=new XDomainRequest();
xmlhttp.onload = function(){callBackFun(xmlhttp.responseText)};
}
else if (window.XMLHttpRequest)
xmlhttp=new XMLHttpRequest();
else
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
callBackFun(xmlhttp.responseText);
}
xmlhttp.open("GET",url,true);
xmlhttp.send();
}
/*------------------*/
newpostReq('http://othersite/mytext.php?req='+Math.random());
</script>
</body>
</html>[/HTMLS]
و کد صفحه PHP:
[PHPS]<?php
set_time_limit(0);
header('Content-type: text/html');
header('Access-Control-Allow-Origin: *');
header('Access-Control-Allow-Headers: X-Requested-With');
if(isset($_GET['req'])){
echo'<b>This is a test!</b><i>'.$_GET['req'].'</i>';
}else{
echo'Error in request!';
}
?>[/PHPS]
ممنونم ار توجهتون
من روی یک کد ajax کار می کنم که باید یک فایل php رو از یه آدرس دیگه (سایت دیگه) بخونه و محتویاتش رو نمایش بده.
کد چیز پیچیده ای نداره. اما برای توضیح بگم که new XDomainRequest برای خواندن محتوای فایل از راه دور برای IE هستش و برای اینکه روی فایرفاکس هم جواب بده در داخل فایل php یک هدر با نام و مقدار:
[JSS]Access-Control-Allow-Origin: *[/JSS] نوشتم. تا اینجاش برای هم IE و هم firefox , Chrome,apple safari کار میکنه اما برای opera هر کاری میکنم نمیشه! دوستان یه کمکی بکنید و منو راهنمایی کنید. کلی تو اینترنت گشتم اما برای اپرا جوابی پیدا نکردم.
مرسی
کد صفحه اصلی:
[HTMLS]<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>TEST</title>
<style type="text/css">
#RES0{font:9pt/12pt Verdana; color:#656588;}
</style>
</head>
<body>
<div><b>Results:</b><br/> <div id="RES0"> </div></div><hr size="1" />
<script>
function callBackFun(val){
document.getElementById('RES0').innerHTML=val;
}
/*------------------*/
function newpostReq(url)
{
var xmlhttp;
if (window.XDomainRequest)
{
xmlhttp=new XDomainRequest();
xmlhttp.onload = function(){callBackFun(xmlhttp.responseText)};
}
else if (window.XMLHttpRequest)
xmlhttp=new XMLHttpRequest();
else
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
callBackFun(xmlhttp.responseText);
}
xmlhttp.open("GET",url,true);
xmlhttp.send();
}
/*------------------*/
newpostReq('http://othersite/mytext.php?req='+Math.random());
</script>
</body>
</html>[/HTMLS]
و کد صفحه PHP:
[PHPS]<?php
set_time_limit(0);
header('Content-type: text/html');
header('Access-Control-Allow-Origin: *');
header('Access-Control-Allow-Headers: X-Requested-With');
if(isset($_GET['req'])){
echo'<b>This is a test!</b><i>'.$_GET['req'].'</i>';
}else{
echo'Error in request!';
}
?>[/PHPS]
ممنونم ار توجهتون