我正在尝试使用JQuery更新MySQL表字段,但是我编写的代码不能使用JQuery,如果我在没有JQuery的情况下运行此代码,它就可以工作。
assignlead.php
<?php
$dbhost = 'localhost';
$dbuser = 'root';
$dbpass = 'root';
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
die('Could not connect: ' . mysql_error());
}
$count=$_POST["id"];
$usersCount = count($count);
for($i=0;$i<$usersCount;$i++) {
$eid=$_POST["eid"][$i];
$id=$_POST["id"][$i];
$sql = "UPDATE clientreg
SET eid='" .$eid. "'
WHERE id='" .$id. "'";
mysql_select_db('helixcrm');
$retval = mysql_query( $sql, $conn );
}
if(! $retval )
{
die('Could not update data: ' . mysql_error());
}
echo "Updated data successfully\n";
mysql_close($conn);
?>
<?php
$rowCount = count($_POST["users"]);
for($i=0;$i<$rowCount;$i++) {
$result = mysql_query("SELECT * FROM clientreg WHERE Id='" . $_POST["users"][$i] . "'");
$row[$i]= mysql_fetch_array($result);
$id=$row[$i]['id'];
?>
<input type="hidden" name="id[]" class="txtField" value="<?php echo $row[$i]['id']; ?>"></td>
<?php
$rowCoun = count($_POST["eid"]);
for($j=0;$j<$rowCoun;$j++) {
$result = mysql_query("SELECT * FROM login WHERE eid='" . $_POST["eid"][$j] . "'");
$row[$j]= mysql_fetch_array($result);
$eid=$row[$j]['eid'];
?>
<input type="hidden" name="eid[]" class="txtField" value="<?php echo $row[$j]['eid']; ?>">
<?php
}
}
?>
我的JQuery
<script>
$(document).ready(function(){
$('#myForm').submit(function(){
$.ajax({
url : 'assignlead.php',
data : $(this).serialize(),
type : 'POST',
success : function(data){
console.log(data);
$("#success").show().fadeOut(5000);
},
error:function(data){
$("#error").show().fadeOut(5000);
}
});
// !important for ajax form submit
return false;
});
});
</script>
我不知道我哪里错了。请帮我解决我的问题。
答案 0 :(得分:2)
$(this)
不是指表格。这样做
$('#myForm').submit(function(){
var self = $(this);
$.ajax({
url : 'assignlead.php',
data : self.serialize(), // using this here will refer to Ajax jQuery object