实际上我只是一个新手程序员,我为我的程序制作了自己的更新 javascript 函数,但遗憾的是代码没有更新..任何人都可以帮助我帮助我的代码工作吗?请。
我想做的是,如果我更改文本框中的值并单击更新,它将更新。
脚本代码:
<script type="text/javascript">
$(document).ready(function () {
$('#updates').click(function (e) {
e.preventDefault();
var $id1 = $('#id1').val();
var $id2 = $('#id2').val();
var $name1 = $('#name1').val();
var $name2 = $('#name2').val();
var $optA1 = $('#optA1').val();
var $optA2 = $('#optA2').val();
var $optB1 = $('#optB1').val();
var $optB2 = $('#optB2').val();
var $other_qual1 = $('#other_qual1').val();
var $other_qual2 = $('#other_qual2').val();
var $interview1 = $('#interview1').val();
var $interview2 = $('#interview2').val();
var $total1 = $('#total1').val();
var $total2 = $('#total2').val();
$.ajax({
type: "POST",
url: "update.php",
data: {
id1_text: $id1,
id2_text: $id2,
name1_text: $name1,
name2_text: $name2,
optA1_text: $optA1,
optA2_text: $optA2,
optB1_text: $optB1,
optB2_text: $optB2,
other_qual1_text: $other_qual1,
other_qual2_text: $other_qual2,
interview1_text: $interview1,
interview2_text: $interview2,
total1_text: $total1,
total2_text: $total2
},
cache: false,
success: function (data) {
alert('data has been updated!');
}
});
});
});
</script>
update.php页面:
<?php
mysql_connect("localhost", "root", "") or die("cant connect to database!");
mysql_select_db("test") or die("cant find database!");
$id1 = @$_POST['id1_text'];
$id2 = @$_POST['id2_text'];
$name1 = @$_POST['name1_text'];
$name2 = @$_POST['name2_text'];
$optA1 = @$_POST['optA1_text'];
$optA2 = @$_POST['optA2_text'];
$optB1 = @$_POST['optB1_text'];
$optB2 = @$_POST['optB2_text'];
$other_qual1 = @$_POST['other_qual1_text'];
$other_qual2 = @$_POST['other_qual2_text'];
$interview1 = @$_POST['interview1_text'];
$interview2 = @$_POST['interview2_text'];
$total1 = @$_POST['total1_text'];
$total2 = @$_POST['total2_text'];
$query1 = mysql_query("UPDATE score SET name=$name1, score1=$optA1, score2=$optB1, other_qual=$other_qual1, interview=$interview1, total=$total1 WHERE id=$id1");
$resource1 = mysql_query($query1) or die(mysql_error());
$query2 = mysql_query("UPDATE score SET name=$name2, score1=$optA2, score2=optB2, other_qual=$other_qual2, interview=$interview2, total=$total2 WHERE id=$id2");
$resource2 = mysql_query($query2) or die(mysql_error());
?>
html:
<form>
Search batchcode: <input id="query" name="search" type="text"><input id="send_search_form" type="button" value="Go" /><br>
Batch #: <label id="batchcode" class="empty_batchcode"></label>
<table>
<tr>
<td>ID:<br>
<input readonly id="id1" class="search_form_input" name="id1" type="text"><br>
<input readonly id="id2" class="search_form_input" name="id2" type="text"><br></td>
<td>Name:<br>
<input id="name1" class="search_form_input" name="name1" type="text"><br>
<input id="name2" class="search_form_input" name="name2" type="text"><br></td>
<td>Score 1:<br>
<input id="optA1" class="search_form_input" name="optA1" type="text"><br>
<input id="optA2" class="search_form_input" name="optA2" type="text"><br></td>
<td>Score 2:<br>
<input id="optB1" class="search_form_input" name="optB1" type="text"><br>
<input id="optB2" class="search_form_input" name="optB2" type="text"><br></td>
<td>Other Qualification:<br>
<input id="other_qual1" class="search_form_input" name="other_qual1" type="text"><br>
<input id="other_qual2" class="search_form_input" name="other_qual2" type=
"text"><br></td>
<td>Interview:<br>
<input id="interview1" class="search_form_input" name="interview1" type="text"><br>
<input id="interview2" class="search_form_input" name="interview2" type="text"><br></td>
<td>Total:<br>
<input id="total1" class="search_form_input" name="total1" type="text"><br>
<input id="total2" class="search_form_input" name="total2" type="text"><br></td>
</tr>
</table>
<input type="button" value="update" id="updates" />
</form>
最佳答案
您在 SQL 查询中缺少名称两边的引号。
$query1 = mysql_query("UPDATE score SET name='$name1', score1=$optA1, score2=$optB1, other_qual=$other_qual1, interview=$interview1, total=$total1 WHERE id=$id1");
如果您使用 PDO 或 mysqli 会更好,这样您就可以使用参数化查询而不是字符串替换。您的代码面临 SQL 注入(inject)的严重危险。
关于javascript - 使用ajax更新文本框中的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21520132/