2013-09-25 36 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代碼