新手 Ajax 和 PHP 获取参数

newbie ajax and php get parameters

本文关键字:获取 参数 PHP Ajax 新手      更新时间:2023-09-26

我需要帮助来做一些小事,但我不知道如何解决它。我有一个包含 ajax 的 javascript 文件,如下所示

$.ajax({
    data: "mc_id="+someid,
    url: "includes/getDataPrs.php",
    type: "GET",
    dataType: "json",
    async: false,
    success: function(msg){
          //some function here
    }
});

在getDataPrs中.php

<?php
include_once 'db_connect.php';
include_once 'functions.php';
  sec_session_start();
  header('Content-Type: application/json');
  $id = null;
  $date = null;
  $limit = 0;
  if (isset($_GET['mc_id'])) {
    $id = $_GET['mc_id'];
  }
  //some process here $data
  echo json_encode($data);

我可以从$_GET['mc_id']获取数据,但是当我需要更多数据并且像这样更改javascript中的参数时

$.ajax({
    data: "{'mc_id':'"+someid+"','limit':'"+somelimit+"'}",
    url: "includes/getDataPrs.php",

然后我在 php $_GET['mc_id']$_GET['limit'] 中一无所获在我绝望地解决它时,我输入了网址"includes/getDataPrs.php?mc_id=someid&limit=somelimit

我非常感谢的任何意见或建议提前感谢

ajax中传递多个变量应该是这样的

$.ajax({
    data: {mc_id: someid, limit: some_limit},
    url: "includes/getDataPrs.php",
    type: "GET",
    dataType: "json",
    async: false,
    success: function(msg){
      //some function here
    }
});

使用data: {mc_id: someid, limit: some_limit}总是更好,因为它会像对象本身一样对待。

尝试使用以下语法在 ajax 函数中发送数据:

...
data:{mc_id:someid,limit:somelimit},
...

不使用引号。

更改自

data: "{'mc_id':'"+someid+"','limit':'"+somelimit+"'}",

data: "mc_id="+someid+"&limit="+somelimit,

按照以下步骤操作:

1) Replace `data: "mc_id="+someid,` with `data: { mc_id: someid},`. (required)
2) Now you can get your data in PHP file like `$_POST['mc_id']` (optional). It is better to use `type: 'POST'`in your jQuery code.

所以下面是你的整个代码:

$.ajax({
data: { mc_id: someid},
url: "includes/getDataPrs.php",
type: 'POST',
dataType: "json",
async: false,
success: function(msg){
      //some function here
}});

在getDataPrs中.php

<?php
include_once 'db_connect.php';
include_once 'functions.php';
  sec_session_start();
  header('Content-Type: application/json');
  $id = null;
  $date = null;
  $limit = 0;
  if (isset($_POST['mc_id'])) {
    $id = $_POST['mc_id'];
  }
  //some process here $data
  echo json_encode($data);
?>

你试试这个

$.ajax({
    type: "POST",
    url: "includes/getDataPrs.php",
    data: {'mc_id': someid, 'limit': somelimit}.done(function (response) {
        //
    });
});