【问题标题】:Calling php mySQL update through ajax通过ajax调用php mySQL update
【发布时间】:2013-04-20 19:16:36
【问题描述】:

我认为这是一个简单的问题。我是 jQuery 的新手。我正在尝试制作脚本,这样当您单击图像时,ajax 将调用 php 文件,该文件将更新 mySQL 数据库。

我的脚本:

<script>
function update(){      
        var request = $.ajax({
        url: "insert.php",
        type: "GET",            
        dataType: "html"
    });

    request.done(function(msg) {
        $("div.recen").html(msg);          
    });

    request.fail(function(jqXHR, textStatus) {
        alert( "Request failed: " + textStatus );
    });
}; 
</script>


HTML:

<div class="recen">
            <img src="./smile.png" class="pic" onclik="update()" /> 
</div>


PHP 文件:

<?php
$var='123';

$url='localhost';
$user='root';
$password='';

$sql=mysql_connect($url,$user,$password);
mysql_select_db('database');

$query="UPDATE table SET var='".$var."';";
if(mysql_query($query)) echo '<b>Done.</b>';
else echo mysql_error();
?>

由于某种原因,绝对没有回应。数据库保持不变,html 页面没有任何变化。是代码有问题,还是无法通过ajax更新数据库?

【问题讨论】:

  • 请注意,您可以使用 $query = "UPDATE table SET var='$var'";因为您不需要转义引号,因为 " 字符串意味着它可以在内部预期变量。以 ' 开头的字符串不会查找变量。

标签: php jquery html mysql ajax


【解决方案1】:

我认为您的查询有问题

试试这个

   $query="UPDATE table SET var='".$var."' ";
                                          ^^----remove this `;`

改变这个

 if(mysql_query($query)) echo '<b>Done.</b>';
 else echo mysql_error();

 if(mysql_query($query)){ echo '<b>Done.</b>';}
 else {echo mysql_error();}

javascript 中没有onclik,而是使用onClick

【讨论】:

    【解决方案2】:

    您的 HTML 代码中有错字。你的属性应该是onclick 而不是onclik

    <img src="./smile.png" class="pic" onclick="update()" />
    

    【讨论】:

      猜你喜欢
      • 2016-08-09
      • 1970-01-01
      • 1970-01-01
      • 2014-04-07
      • 1970-01-01
      • 1970-01-01
      • 2016-07-26
      • 2011-10-03
      • 2012-09-30
      相关资源
      最近更新 更多