第一次尝试使用AJAX在我的数据库中插入记录。我有以下......
表格
<form>
<input type="text" id="salary" name="salary">
<input type="button" onclick="insertSalary()">
</form>
AJAX
<script type="text/javascript">
function insertSalary()
{
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById('current-salary').innerHTML=xmlhttp.responseText;
}
};
xmlhttp.open("POST","insert_salary.php",true);
xmlhttp.send("salary=" + document.getElementById("salary").value);
}
</script>
PHP
$uid = $_SESSION['oauth_id'];
$monthly_income = mysql_real_escape_string($_POST['salary']);
#Insert a new Record
$query = mysql_query("INSERT INTO `income` (user_id, monthly_income) VALUES ($uid, '$monthly_income')") or die(mysql_error());
$result = mysql_fetch_array($query);
return $result;
现在我的数据被插入表格 BESIDES '薪水',输入为'0'
一旦插入,我也有一个div'当前工资',然后应该输入值只有它不是,有人可以帮我理解我出错的地方吗?
答案 0 :(得分:4)
如果您想为自己节省大量时间,精力和心痛,请使用jquery库来处理您的ajax请求。您可以在http://jquery.com/
下载在jquery脚本中添加引用(脚本标记)后,ajax请求的javascript将变为:
function insertSalary()
{
var salary = $("#salary").val();
$.post('insert_salary.php', {salary: salary}, function(data)
{
$("#current-salary").html(data);
});
}
另请注意,使用“insert_salary.php”作为url意味着它是一个相对路径,并且必须位于当前运行脚本的文件夹中。
你的php脚本需要回显你想要注入当前工资标签的任何内容。