尝试使用php实现自动建议。使用awk 生成的自动建议列表
$input= $_GET["term"];
$suggest=array();
exec('awk ''BEGIN{FS=","}/.$input./{print $2,"-cost-",$1}'' 3.txt',$suggest);
echo json_encode($suggest)
代替$input来测试autosuggest,我使用了一个字符,例如a,效果很好。然而,我不能将动态字符作为awk的输入。有点不对劲$输入不知道如何写转义字符
提前感谢
转动
exec('awk ''BEGIN{FS=","}/.$input./{print $2,"-cost-",$1}'' 3.txt',$suggest);
进入:
exec('awk ''BEGIN{FS=","}/'.$input.'/{print $2,"-cost-",$1}'' 3.txt',$suggest);
您忘记终止第一个'
,这是必需的,因为您不能在单引号字符串中展开变量。
附带说明:正如评论中所指出的,您可能需要再三考虑是否盲目地接受GET
参数作为shell命令,而不进行某种安全检查。用户可以并且将很快找到利用该漏洞的方法。。。