我需要用我的应用程序运行一些php文件,我将它们上传到我的网站。我在这里读过一篇文章,我为我的文件做了同样的事情,但是我的php文件正在使用ajax,所以我无法运行它。我尝试了所有可能的方法,但我仍然错了。
search.html通过js创建一个链接,并将此链接传递给get_data.php,并在results
标记的同一页面中显示结果。
search.html
function abc(target_url) {
target_url = target_url||(generate_url()||"http://nces.ed.gov/collegenavigator/?");
ajax = window.XMLHttpRequest?(new XMLHttpRequest()):(new ActiveXObject("Microsoft.XMLHttp"));
ajax.onreadystatechange=function() {
if(ajax.readyState===4) {
html_data = ajax.responseText;
//Do stuff with it like parsing, etc
//alert(html_data);
window.loading.style.visibility="hidden";
document.getElementById("results").innerHTML = html_data ||"We're sorry";
}
};
ajax.open("GET", "./get_data.php?url="+encodeURIComponent(target_url), true);
ajax.send(null);
window.loading.style.visibility="visible";
}
这是get_data.php
<?php
include_once('simple_html_dom.php');
$target_url = $_REQUEST["url"];
$html = new simple_html_dom();
$html->load_file($target_url);
$gokhan='arik';
#$anchors = array_diff($html->find('table[class=resultsTable] a'), $html->find('td[class=addbutton] a'));
$h2 = $html->find('table[class=resultsTable] h2');
$ipeds = $html->find('p[class=ipeds hoverID]');
foreach($html->find('div[id=ctl00_cphCollegeNavBody_ucResultsMain_divMsg]') as $nOfResults){
echo "<b>".strip_tags($nOfResults)."</b>";
}
$loca = $html->find('table[class=itables] tbody tr td[class=pbe]');
for($i=0;$i<count($h2);$i++) {
if(strip_tags($h2[$i])=="") continue;
#echo strip_tags(strtr($ipeds[$i], array(" "=>" ")));
$iped = explode(" ", strip_tags(strtr($ipeds[$i], array(" "=>" "))));
echo "<li data-theme='c' class='ui-btn ui-btn-icon-right ui-li-has-arrow ui-li ui-btn-up-c'>
<div class='ui-btn-inner ui-li'>
<div class='ui-btn-text'>
<a href='search2.php?id=".$iped[2]."' class='ui-link-inherit'><h3 class='ui-li-heading'>".strip_tags($h2[$i])."</h3><p class='ui-li-desc'>".strip_tags(strtr($loca[$i], array('</h2>'=>'</h2> ')))."</p></a>
</div>
<span class='ui-icon ui-icon-arrow-r ui-icon-shadow'/>
</div>
</li>
";
}
&GT;
答案 0 :(得分:0)
使用ajax(您尝试的方法)是我建议的方法。您试图在不使用框架的情况下执行ajax请求,如果您没有在网站中使用任何其他框架,我认为这是减少网站加载时间的好主意。但是你尝试实现ajax的方式会有一些有趣的事情发生。
如果您不打算使用某个框架,我建议使用http://www.w3schools.com/ajax/tryit.asp?filename=tryajax_callback
之类的内容我在你提到的评论中注意到
$(&#39;#含量&#39)。载荷(&#39; http://www.example.com/test.php&#39);
这是指使用jQuery将内容加载到您的页面中。查看上面提供的示例代码,我看不到您实际导入jQuery的位置。首先导入jQuery然后尝试使用该代码。另外,我建议使用$ .ajax({})而不是$(&#34; #content&#34;)。load(&#34; url&#34;);
$.ajax({
url: "http://www.example.com/test.php",
success: function(x){
$("#results").html(x);
}
});
有关使用jQuery框架执行ajax请求的更多信息,请访问http://api.jquery.com/jQuery.ajax/