2013-09-25 95 views
0

我想用jQuery/AJAX在服务器上运行PHP文件。这个PHP只是在数据库中添加一些包含常量的行。这里是我的代码:PHP不工作的jQuery/AJAX执行

<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>Submit Application</title> 
<script type="text/javascript" src="jquery.min.js"></script> 
<script type="text/javascript"> 
function doSomething() { 
    $.get("http://.../submitApp.php"); 
} 
</script> 

</head> 

<body> 
<form id="form1" name="form1" method="post" action="javascript:doSomething()"> 
    <p> 
    <label for="programName"></label> 
    <input type="text" name="programName" id="programName" /> 
    </p> 
    <p> 
    <label for="greQuant"></label> 
    <input type="text" name="greQuant" id="greQuant" /> 
    </p> 
    <p> 
    <label for="greVerbal"></label> 
    <input type="text" name="greVerbal" id="greVerbal" /> 
    </p> 
    <p> 
    <input type="submit" name="submitApp" id="submitApp" value="Submit" /> 
    </p> 
</form> 
</body> 
</html> 

在上面的表单上按下提交按钮,似乎没有任何事情发生。我应该提到我通过DreamWeaver在本地运行。我知道代码已经到达JavaScript方法并且PHP代码是有效的。任何人都知道什么是错的?

+1

试'的onsubmit = 'DoSomething的()' '而不是'action' –

+0

如果我告诉过你,我还知道这个代码是否能够使用JS方法吗? –

+0

真的吗?或者你只是添加该行?大声笑smh –

回答

1

使用POST而不是GET来完成这项工作。

function doSomething() { 
    var programName = $('#programName').val(); 
    var greQuant = $('#greQuant').val(); 
    var greVerbal = $('#greVerbal').val(); 
    $.ajax({ 
     type: "POST", 
     url: "submitApp.php", //URL that you call 
     data: { programName: programName, greQuant:greQuant, greVerbal:greVerbal } //var in post: var from js 
    }).done(function(msg) { 
     alert(msg);//change to something to indicate action 
    } 
}); 

,并与你的PHP,处理这样

<?php 

$programName = $_POST['programName']; 
$greQuant = $_POST['greQuant']; 
$greVerbal = $_POST['greVerbal']; 

//do something important 

?> 

这只是一个简单的例子,你需要应用一些安全这个PHP代码