我在CMS系统的范围内工作,该系统定义了某些字段,这些字段可用于制作在PHP中的应用程序中使用的表单。
我正在使用inputSmartSearch字段,这与Google建议的字体基本类似。
它允许我定义一个SQL查询,然后显示我在搜索中输入时匹配的记录。
对于我的smartsearch,我选择它来搜索不同表格中的三个字段,并显示连接在一起的字段。
我使用如下定义我的字段:
$theinput = new inputSmartSearch($db, "chooseguests", "Choose Guests");
最后一个参数是要执行的SQL查询的名称。
这很好用,可以通过搜索他的姓或名来找到客人。
但是,我已经实现了这个智能搜索的目的是添加销售订单的页面。
在销售表中存储的每个销售订单中,与来宾表不同,我还希望获得订单的来宾的名字和姓氏。
销售订单表的设计有两个单独的字段用于名字和姓氏。
使用smartsearch,我找不到任何方法来标记所选输入并将其重新插入到字段中。
如果我有一个智能搜索并且可以按名字或姓氏搜索,它只会将结果显示为一个字段,我希望它将firstname保存到firstname字段,将lastname保存到lastname字段。
每个定义的表单都有一个include文件,它定义了插入记录的功能,如下所示:
function prepareVariables($variables){
// if ($variables["webaddress"]=="http://")
// $variables["webaddress"] = NULL;
return $variables;
}
function updateRecord($variables, $modifiedby = NULL, $useUuid = false){
$variables = $this->prepareVariables($variables);
return parent::updateRecord($variables, $modifiedby, $useUuid);
}
function insertRecord($variables, $createdby = NULL, $overrideID = false, $replace = false, $useUuid = false){
$variables = $this->prepareVariables($variables);
return parent::insertRecord($variables, $createdby, $overrideID, $replace, $useUuid);
}
但是,我不确定如何修改插入或更新函数以执行我需要它们执行的操作,或者这是否是正确的方法。
我应该寻找复杂的SQL查询吗?从inputSmartSearch的结果中自动填充内容的隐藏字段?还有别的吗?
答案 0 :(得分:0)
不确定你的设置有什么可能,但是......我的第一反应就是从数据库返回名字和令牌结合 - 就像 - ','So Smith,John。然后,当准备发回时,将它们分开(基于已知令牌)。现在你去那里的地方,我不知道。
答案 1 :(得分:0)
您只需使用数据库中的值手动设置智能搜索的起始值。然后,当数据发布到服务器时,您可以解析并附加到用于在数据库中存储数据的数组。至少这似乎应该有用。