J'essaie d'ajouter un script tokenizer autocomplete à certains champs de formulaire et un problème que je rencontre est si une personne enregistre plusieurs valeurs pour le champ les suggestions de saisie semi-automatique reviennent avec toutes ses valeurs comme une longue valeur au lieu d'être des valeurs uniques délimitées par la virgule. J'ai d'abord essayé d'exploser simplement la valeur mais elle ne la met pas correctement en forme dans le codage json.json encoder une ligne délimitée par des virgules
Voici mon fichier 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);
Cela donne la sortie comme ceci: [{ "cb_activities": "Coups de pied Chats,"}, { "cb_activities": "baseball, hockey,"} ] mais j'ai besoin à la sortie comme ceci: [{ "cb_activities": "Coups de pied Chats,"}, { "cb_activities": "baseball,"}, "cb_activities": "hockey,"}]
Je dois également trouver un moyen d'empêcher le remplissage des entrées en double, par exemple, la façon dont on dit maintenant que 10 personnes ont tous des coups de pied coupés sélectionnés comme une valeur qu'elle affichera 10 fois e suggestions de saisie semi-automatique. Comment puis-je définir cette délimitation correctement aux virgules, puis éliminer les valeurs en double? Je n'ai pas beaucoup fait avec json alors soyez précis lol.