如何在客户端发送ajax请求,如何发送$ .ajax POST请求从客户端到服务器

我正在开发一个phonegap应用程序,我需要从html文件发送一些数据到服务器并获得输出作为响应。 当我有我的所有文件在保存他们的工作服务器。当我将文件分割成客户机和服务器机器时,他们不工作,并且据我了解,它必须处理CROSS DOMAIN POST REQUEST。 这里是我下面的代码:

客户端:something.html

$(document).ready(function() {

$("#login").click(function(e){

var formData = $("#loginForm").serialize();

$.ajax({

type: "POST",

url: "http://testserver.bscheme.com/rss/login.php",

crossDomain: true,

cache: false,

data: formData,

success: function(txt){

if(txt !=""){

localStorage.setItem("background", txt);

//alert(localStorage.getItem("background"));

document.location.href="logged.html";

}

else

alert("Badly Failed");

}

});

e.preventDefault();

}); });

服务器端:login.php中

include('inc/db.php');

try

{

$userName = mysql_real_escape_string($_POST['username']);

$passcode = mysql_real_escape_string($_POST['passcode']);

if(empty($feedName)!="" && empty($feedUrl)!="") {

$result = mysql_query("SELECT id,email,password FROM user WHERE email = '".$userName."'");

$row = mysql_fetch_array($result);

//echo $userName . $row['email'];

// echo $passcode . $row['password'];

if($row['email']== $userName && $row['password'] == $passcode && $row['email']!= "" && $row['password'] != "") {

echo $row['id'];

}else{

echo "fail";

}

} else {

echo "All fields are mandatory!";

}

}

catch(Exception $e)

{

// normally we would log this error

echo $e->getMessage();

}

如何允许CROSS DOMNAIN帖子,我知道我必须编辑我的服务器的PHP文件,我已经添加了下面的代码,但我的工作要么

switch ($_SERVER['HTTP_ORIGIN']) {

case 'http://localhost/rss': case 'https://localhost/':

header('Access-Control-Allow-Origin: '.$_SERVER['HTTP_ORIGIN']);

header('Access-Control-Allow-Methods: POST, GET, OPTIONS');

header('Access-Control-Max-Age: 1000');

header('Access-Control-Allow-Headers: Content-Type');

break;

}

使用Firebug我说我的$ .POST,这是我有

ResponseHeaders RequestHeaders Content-Type application/x-www-form-urlencoded;字符集= UTF-8 接受/

Parametersapplication/X WWW的窗体-urlencoded 密码ASD 用户名QWE 源 用户名= QWE &密码= ASD

响应

响应总是空白。当所有的html和php都在本地主机或我的测试服务器上时,它都可以工作。 我的php和jquery技能缺乏atm,所以如果其他人已经提出了我很抱歉重复的问题,就很难理解它。 泰您帮助

2013-05-30

Surja

+0

也许你可以使用jQuery中的getJSON作为跨域请求。 –

+0

我怎样才能发送数据与getJSON我需要发送用户名和密码(明白了) –

+0

不要这样做!现在我明白你在做什么。将ajax发布到自己的服务器上,然后该脚本向远程服务器发出请求。 –

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值