php - 使用 AJAX 和 PHP 更新 MySQL

标签 php jquery mysql ajax

我会慢慢来,不是为了你……是为了我。我真的不擅长做这件事。我想要做的是从 HTML 表实时更新 MySQL 数据库。这就是每个的构建方式。

 echo ("<td id=\"callsign:$row[recordID]\" contenteditable=\"true\" 
                onClick=\"showEdit(this)\"
                onBlur=\"saveToDatabase(this,'callsign',$row[recordID])\" 
                style='text-transform:uppercase'>
                $row[callsign]</td>");

这是它的渲染方式。

 <td id="callsign:6" contenteditable="true" onclick="showEdit(this)" onblur="saveToDatabase(this,'callsign',6)" style="text-transform: uppercase; background-color: rgb(253, 253, 253); background-position: initial initial; background-repeat: initial initial;">
                KA0SXY</td>

这是被调用的函数。

 function saveToDatabase(editableObj,column,id) {

        $(editableObj).css("background","#FFF url(loaderIcon.gif) no-repeat right");
            $.ajax({
                url: "saveedit.php",
                type: "POST",
                data:'column='+column+'&editval='+editableObj.innerHTML+'&id='+id,
                success: function(data){
                    $(editableObj).css("background","#FDFDFD");
                }  
            });
      }

这是 PHP。

 <?php
require_once "dbConnectDtls.php";

    $result = mysql_query("UPDATE NetLog set " . $_POST["column"] . " = '".$_POST["editval"]."' WHERE  recordID=".$_POST["id"]);
    echo $result;

 ?>

当我从这个单元格切换到下一个单元格时,唯一执行的是 .gif。 MySQL 没有得到更新,我做错了什么?

提前感谢您没有把我当傻瓜,而是帮助我学习。

跟进建议:

恐怕我在这方面没有取得任何进展。有人愿意实际编写一个我可以遵循的工作示例吗?

最佳答案

对于一个新手来说,在你的脚本中你应该注意很多事情:

  1. 首先,您必须避免将 $_POST 值直接插入到查询中,因为这可能会导致 sql injection。问题。
  2. 你应该使用PDOMySQLi出于同样偏执的原因执行查询。
  3. 你应该保持一致。为什么在使用 JQuery 时使用 .innerhtml?你可以使用 $(editableObj).html()
  4. 您没有显示任何 javascript 错误:您正在查看控制台吗?尝试右键单击页面正文并选择“检查元素”,然后单击出现的框架的“控制台”选项卡。
  5. 此外,您没有打印返回的“数据”变量以查看服务器中是否是预期结果。你可以这样做:

    控制台日志(数据);

除此之外,您的脚本中的一切看起来都不错 ;)

关于php - 使用 AJAX 和 PHP 更新 MySQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30564181/

相关文章:

php - Aws S3 CompleteMultipartUpload 错误

php - 获取输入类型单选的值并根据选择的类型重定向

javascript - 如何使用 JavaScript 或 JQuery 在 HTML 选择中禁用选定项目后的项目?

Jquery Append - 奇怪的行为

php - 没有插入数据库!

php - 函数中的 CodeIgniter "Using $this when not in object context"

javascript - Bootstrap 输入掩码在动态文本框中不起作用?我能做些什么?

在 MYSQL 中设置 PHP 冷却时间

MySQL如何从多行中分组并选择某些状态?

php - 遍历所有具有几乎相同 ID 的 $_POST