php - 将多个变量从 jquery 传递到 php

标签 php jquery ajax html css

希望到目前为止每个人都享受编码的一天 :D。我对 JQUERY 和 AJAX 比较陌生,一直在努力寻找解决方法,不过我正在努力。但是我有一个小问题。我有使用 PHP 从 MYSQL 数据库生成的 HTML 内容(因此复选框的值不同);这是我正在为我的网站开发的一个简单的内部消息传递程序。我有一个复选框,我可以单击它来选中页面上的所有其他复选框。然而,我希望实现的是,当用户选择特定数量或什至几个复选框时,然后按下一张图片,然后调用我的 php 文件,该文件将负责删除用户选中的消息。上一个问题有很大帮助:How to pass jQuery variables to PHP variable?但我有很多复选框

HTML/JS:

<body>
    Check Box: <input type="checkbox" name="check" value="1">
Check Box: <input type="checkbox" name="check" value="4">
Check Box: <input type="checkbox" name="check" value="3">
Check Box: <input type="checkbox" name="check" value="4">

<img id = "delete" src="http://icons.iconarchive.com/icons/visualpharm/must-have/256/Delete-icon.png">

<script>
$("#delete").click(function () {
   $.post('sql_delete.php', 'num=' + $(this).val(), function (response) {
      alert(response);
   });
}); 
</script>
</body>

PHP

<?php
    require 'functions/init.php';

        $messageid = "_$POST[num]";

        $sql_statement = "DELETE FROM chj_messages WHERE message_ID = $messageid";
        mysql_query($sql_statement);


?>

我怀疑我可能需要在 JS 和 PHP 中使用循环,但我不确定。欢迎您提出所有美好的建议:D

最佳答案

$messageid = "_$POST[num]"; 应该是 $messageid = $_POST['num'];

当用户单击它们时,您的代码将一个接一个地删除复选框。如果你想让用户尽可能多地勾选,然后点击某个按钮来删除它们,你需要从复选框中删除 click 监听器并将它绑定(bind)到提交按钮或你的图像提及。您还需要更改进行 ajax 调用的方式 - 您必须序列化所有已检查的 ID 并发送它。此外,PHP 代码需要对该数据进行反序列化,并对每个收到的 ID 进行 DELETE 查询。

此外,可能最重要的是,请阅读 SQL Injection在使用任何使用 MySQL 的站点上线之前。并且 mysql_* 函数已被弃用,就像它在 php.net 上所说的那样, 所以你最好切换到 mysqli_* 或 PDO。

关于php - 将多个变量从 jquery 传递到 php,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14553756/

相关文章:

php - 如果性别类型为 0,则存储 M;如果性别类型为 1,则存储 F 使用 php 和 mysql

javascript - 使用PHP和JavaScript的幻灯片放映

php - 作业跟踪的批处理通知

c# - 我可以使用 ajax 调用 C# 代码隐藏方法吗?

PHP 服务器输出关于 FD_SETSIZE 的警告

javascript - 使用jquery在div中显示加载图标

jQuery cookies 不工作!

javascript - 使用很棒的字体作为光标

ajax - OpenLaszlo DHTML 运行时生产准备好了吗?

ajax - JSF文件下载异常处理(如何防止 View 重绘)