这是我的javascript和ajax代码,它返回成功但数据库没有更新,任何想法?谢谢。解决
function send_data()
{
var name = $('#name').val();
var keywords = $('#keywords').val();
var description = $('#description').val();
var cat1 = $('#cat1').val();
var cat2 = $('#cat2').val();
var cat3 = $('#cat3').val();
var id = $('#id').val();
$.ajax({
url: "updateproductsgo.php?name=" + name + "&keywords=" + keywords + "&description=" + description + "&cat1=" + cat1 + "&cat2=" + cat2 + "&cat3" + cat3 + "&id=" + id,
type: 'GET',
success: function(result) {
alert('success');
// use the result as you wish in your html here
jQuery("#results").html(result);
}});
}
这是我在updateproductsgo.php上的代码
$con=mysql_connect("localhost","root","");
$db=mysql_select_db("xxx",$con);
$id=$_GET['id'];
$name=$_GET['name'];
$keywords=$_GET['keywords'];
$description=$_GET['description'];
$cat1=$_GET['cat1'];
$cat2=$_GET['cat2'];
$cat3=$_GET['cat3'];
$query = "UPDATE xxx SET name = '$name', keywords = '$keywords', description = '$description', cat1 = '$cat1', cat2 = '$cat2', cat3 = '$cat3' WHERE id = '$id'";
echo $query;
mysql_query($query) or die(mysql_error());
更新了$ query,但没有产生任何影响。
解决!网页上有一个=丢失了。基本的东西!!
答案 0 :(得分:1)
您的更新查询缺少逗号
$query = "UPDATE products SET name = '$name', keywords = '$keywords', description = '$description', cat1 = '$cat1', cat2 = '$cat2', cat3 = '$cat3' WHERE id = $id";
答案 1 :(得分:0)
您在查询中缺少逗号和单引号。
$ query =" UPDATE产品SET name =' $ name',keywords =' $ keywords',description =' $ description',cat1 =' $ cat1',cat2 =' $ cat2',cat3 =' $ cat3' WHERE id =' $ id'";
答案 2 :(得分:0)
打印$ query并检查phpmyadmin您打印的查询是否有效。如果没有,那么请在您设置新值的每个地方检查您的查询错过了逗号。
答案 3 :(得分:0)
找出您正在使用的php版本。
从PHP 5.5.x开始,原来的MySQL扩展现已弃用,并且 将生成E_DEPRECATED错误。
http://php.net/manual/en/migration55.deprecated.php
您可能需要使用mysqli。