オートコンプリート トークナイザー スクリプトをいくつかのフォーム フィールドに追加しようとしていますが、問題の 1 つは、フィールドに複数の値を保存すると、オートコンプリートの提案がすべての値を単一ではなく 1 つの長い値として返すことです。コンマで区切られた値。最初に値を単純に爆発させようとしましたが、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":"Kicking Cats,"},{"cb_activities":"baseball,hockey,"}] のような出力が得られますが、次のように出力する必要があります: [{"cb_activities":"Kicking猫,"},{"cb_activities":"野球,"},"cb_activities":"ホッケー,"}]
また、重複したエントリが入力されないようにする方法を見つける必要もあります。たとえば、10 人全員が値として選択された猫を蹴っていると言い、オートコンプリートの提案で 10 回表示されます。
コンマで正しく区切り、重複する値を除外するように設定するにはどうすればよいですか? 私はjsonをあまり使っていないので、具体的に言ってください笑。