【问题标题】:json encode comma delimited rowjson 编码逗号分隔行
【发布时间】:2010-12-05 19:10:31
【问题描述】:

我正在尝试向某些表单字段添加一个自动完成标记器脚本,我遇到的一个问题是,如果一个人为该字段保存多个值,则自动完成建议会返回他的所有值作为一个长值而不是它们是由逗号分隔的单个值。我首先尝试简单地分解该值,但它在 json 编码中的格式不正确。

这是我的 php 文件:

//connection information
 $host = "localhost";
 $user = "myuser";
 $password = "mypass";
 $database = "mydb";
 $param = ($_GET["term"]);

 //make connection
 $server = mysql_connect($host, $user, $password);
 $connection = mysql_select_db($database, $server);

 //query the database
 $query = mysql_query("SELECT cb_activities FROM jos_comprofiler WHERE cb_activities REGEXP '^$param'");

 //build array of results
  for ($x = 0, $numrows = mysql_num_rows($query); $x < $numrows; $x++) {
  $row = mysql_fetch_assoc($query);
  $activities[$x] = array(cb_activitiesterm => $row[cb_activities]); 
  }

 //echo JSON to page
 $response = $_GET["callback"] . "(" . json_encode($activities) . ")";
 echo $response;

 mysql_close($server);

这给出了这样的输出: [{"cb_activities":"踢猫,"},{"cb_activities":"棒球、曲棍球,"}] 但我需要它像这样输出: [{"cb_activities":"踢猫,"},{"cb_activities":"棒球,"},"cb_activities":"曲棍球,"}]

我还需要找到一种方法来防止填充重复条目,例如现在说 10 个人都选择了踢猫作为值,它将在自动完成建议中显示 10 次。

如何设置它以正确分隔逗号,然后清除重复值? 我对 json 做的不多,所以要具体大声笑。

【问题讨论】:

    标签: json comma delimited


    【解决方案1】:

    NM 重复问题,我只是添加了 select distinct 而不是 select,这个 json 东西让我现在把事情复杂化了哈哈。现在,如果我能弄清楚如何在逗号处正确分隔,一切都会好起来的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-02-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-08-19
      相关资源
      最近更新 更多