javascript - 数据未通过 AJAX 调用发送

标签 javascript php jquery mysql ajax

我在 AJAX 调用方面遇到困难。我正在尝试发送发布公告的用户的 ID,然后发送消息。由于某种原因,user_id 没有发送过来。消息正在发送,但我收到一条错误,指出它有 undefined index ,但我将所有内容处理到另一个文件中,并且消息正在发送。我试图使用用户 ID 的 session 来发送,但我也尝试过执行 SELECT 查询并以这种方式发送它,但它仍然不发送。

这是我的 session 代码..

$userid = ( isset( $_SESSION['user'] ) ? $_SESSION['user'] : "" );

我做错了什么导致用户 ID 无法发送并且我的查询无法发送到我的数据库?

$(document).ready(function(){ 
             $("#submit_announcement").on("click", function () {

             var user_message = $("#announcement_message").val();
                $user = this.value;
                $.ajax({ 
                    url: "insert_announcements.php", 
                    type: "POST",
                    //data : 
                    //{'message':message,'anothermessgae':another}
                    data: {
                           "user_id": $user,
                                        "message": user_message
                            },
                    success: function (data) {
                           //  console.log(data); // data object will return the response when status code is 200
                             if (data == "Error!") {
                                 alert("Unable to get user info!");
                                 alert(data);
                             } else {
                                 $(".announcement_success").fadeIn();
                                 $(".announcement_success").show();
                                 $('.announcement_success').html('Payment Status Changed!');
                                 $('.announcement_success').delay(5000).fadeOut(400);
                             }
                         },
                         error: function (xhr, textStatus, errorThrown) {
                             alert(textStatus + "|" + errorThrown);
                             //console.log("error"); //otherwise error if status code is other than 200.
                         }
                     });
                 });
             });

表格

  <div class="announcement_success"></div>
        <p>Add New Announcement</p>
            <form action="" method="POST" id="insert_announcements">
            <input type="hidden" value="<?php echo $userid; ?>" id="approved_id" name="user_id" />
                <textarea rows="4" cols="50" id="announcement_message" name="message" class="inputbarmessage" placeholder="Message" required></textarea>
                <label for="contactButton">
                    <button type="button" class="contactButton" id="submit_announcement">Add Announcement</button>
                </label>
            </form>

插入公告.php

$announcement_user_id= $_POST['user_id'];
$announcement_message= $_POST['user_message'];
//$test = print_r($_POST, true); 
//file_put_contents('test.txt', $test); 
//var_dump($announcement_user_id);

$con = mysqli_connect("localhost", "", "", "");
$stmt2 = $con->prepare("INSERT INTO announcements (user_id, message, date) VALUES (?, ?, NOW())");
    if ( !$stmt2 || $con->error ) {
        // Check Errors for prepare
         die('Announcement INSERT prepare() failed: ' . htmlspecialchars($con->error));
    }
    if(!$stmt2->bind_param('is', $announcement_user_id, $announcement_message)) {
        // Check errors for binding parameters
        die('Announcement INSERT bind_param() failed: ' . htmlspecialchars($stmt2->error));
    }
    if(!$stmt2->execute()) {
        die('Announcement INSERT execute() failed: ' . htmlspecialchars($stmt2->error));
    }
        //echo "Announcement was added successfully!";
    else
    {
         echo "Announcement Failed!";
    }
?>

我收到以下错误

<b>Notice</b>:  Undefined index: user_message in <b>/home4/gregre/public_html/example.com/insert_announcements.php</b> on line <b>9</b><br />

公告 INSERTexecute() 失败:列“message”不能为空

但是我正在将发送的内容发送到我的文件中并且消息正在发送?只是 user_id 显示为空白。

最佳答案

有几个错误:

  1. $user = $("#approved_id").val();
  2. “user_message”:user_message

关于javascript - 数据未通过 AJAX 调用发送,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32010968/

相关文章:

javascript - 措辞不佳的 JavaScript 词法作用域示例

php - 使用已知的用户名和密码登录 Facebook API

php - 对象类无法转换为字符串错误

php - 将id插入MYSQL表以进行多图片上传

jQuery UI 对话框按钮文本作为变量

javascript - 创建一个可复制但不克隆的 Angularjs Web 表单

javascript - 为什么会进行这个 ajax 调用,尽管它不应该被调用

javascript - Sonar 可以从我的 git 存储库中提取代码并定期分析吗?

php - 文本区域的富文本编辑器

jquery - 除非我调整浏览器大小,否则图像不会加载到 Flickity 中