从一个字段中设置数据库中的多个字段

时间:2010-07-01 08:20:32

标签: php sql mysql database ajax

我在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的结果中自动填充内容的隐藏字段?还有别的吗?

2 个答案:

答案 0 :(得分:0)

不确定你的设置有什么可能,但是......我的第一反应就是从数据库返回名字和令牌结合 - 就像 - ','So Smith,John。然后,当准备发回时,将它们分开(基于已知令牌)。现在你去那里的地方,我不知道。

答案 1 :(得分:0)

您只需使用数据库中的值手动设置智能搜索的起始值。然后,当数据发布到服务器时,您可以解析并附加到用于在数据库中存储数据的数组。至少这似乎应该有用。