首页 > 解决方案 > 如何使用 ajax 和 php 发布数据数组

问题描述

我有一个使用 ajax 将数据发布到 php 脚本的表单

当我传递一个值时,它会按预期工作,但现在我需要传递多个值,并且我已将数组 attr 添加到我的 texfield。

<input type="hidden" name="fav[]" id="fav" value="<?php echo 
$row_trx['jobid']; ?>">

然后我尝试以这种方式查看数据。

阿贾克斯

 var fav=document.getElementById( "fav" );

  if(fav)
    {
  $.ajax({
  type: 'post',
  url: 'loq.php',
  data: {
 fav:fav.value,
 },
  error: function (request, error) {
  // error
  },
  success: function (response) {

  $( '#pep<?php echo $row_trx['jobid']; ?>' ).html(response);
  //alert('success');
  }

php

 if( isset( $_POST['fav'] ) )
 {

 $fav = $_POST['fav'];


  foreach( $fav as $key => $n ) {
  echo $n;
  }

我得到一个为 foreach() 提供的无效参数

标签: phpajax

解决方案


PHP _POST['fav'] 有一个字符串值,因此在 PHP(即服务器)端,您需要通过 json_decode 将其解析为 PHP 数组。此外,在您的 ajax 请求中,您需要发送一个数组。


推荐阅读