好吧基本上我有一个flash登录,我使用ExternalInterface处理JS。我想只在用户登录时加载php,如何才能执行此操作而不发送新的回发(重新加载页面)?
我基本上想要的是:一旦用户登录,JS就会出现。我希望它一旦点击就可以执行MySql查询,获取数据并显示用户而无需重新加载页面。
我知道这是AJAX,但我真的不知道怎么做 - 我不熟悉php,我也不知道如何在JS中调用函数时运行php。
祝你好运, 的iMix
答案 0 :(得分:1)
您希望将XMLHttpRequest发送到另一个返回数据的php文件。然后,使用JS,解析您返回的任何格式的数据(我推荐JSON),并更新HTML。
由于您只想在用户登录时返回数据,您可能希望通过加密连接发送用户名/密码,在帖子请求的正文中,然后检查php文件,如果他们有效。
答案 1 :(得分:1)
你可以使用jquery,这将是一个快速而实用的解决方案。
function login(){
$.ajax({
type: "POST",
url: "your_login_script.php",
data: { username: "thatuser", password: "thatpwd" }
}).done(function( result ) {
alert(result);
});
}
答案 2 :(得分:0)
是的,你需要使用AJAX。
以下是最简单程序的概述:
这是完成工作的最基本,最基本的代码。
xmlhttp=new XMLHttpRequest();
xmlhttp.onreadystatechange=function() {
if (xmlhttp.readyState==4 && xmlhttp.status==200) {
document.getElementById("targetDiv").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET", "somescript.php", true);
xmlhttp.send();
如果您要将任何内容投入公开制作,您应该在AJAX上阅读一些内容。我还强烈建议使用jQuery或其他一个Javascript库。对于这种事情,他们有比你自己做饭更好的抽象。