Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/58.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何使用Fabrik(joomla组件)表单连接到数据库表&;搜索匹配&;返回结果?_Php_Mysql_Joomla2.5 - Fatal编程技术网

Php 如何使用Fabrik(joomla组件)表单连接到数据库表&;搜索匹配&;返回结果?

Php 如何使用Fabrik(joomla组件)表单连接到数据库表&;搜索匹配&;返回结果?,php,mysql,joomla2.5,Php,Mysql,Joomla2.5,我正在使用组件 我试图获得的功能是让用户使用e-junkie从我的网站购买一个独特的代码。支付完成后,e-junkie将处理一个脚本,该脚本将代码发送到MySQL数据库表 购买后,他们将被重定向到网站上的一个页面,通过填写表格激活他们的代码。为了激活代码,他们需要在三个文本字段中输入数据: 名字 姓 唯一代码 表单已经用Fabrik设置好,并在网站上很好地显示出来 我现在需要的是,在提交表单时,我需要它连接到存储唯一代码的数据库,在数据库表中搜索匹配的firstname、lastname和u

我正在使用组件

我试图获得的功能是让用户使用e-junkie从我的网站购买一个独特的代码。支付完成后,e-junkie将处理一个脚本,该脚本将代码发送到MySQL数据库表

购买后,他们将被重定向到网站上的一个页面,通过填写表格激活他们的代码。为了激活代码,他们需要在三个文本字段中输入数据:

  • 名字
  • 唯一代码
表单已经用Fabrik设置好,并在网站上很好地显示出来

我现在需要的是,在提交表单时,我需要它连接到存储唯一代码的数据库,在数据库表中搜索匹配的
firstname
lastname
unique code
,如果找到匹配,则返回成功消息,如果找不到匹配,则返回失败消息

Fabrik允许在提交表单时运行PHP插件脚本,我将为表单上的每个字段使用单独的插件

到目前为止,我已经提出了下面的代码片段,它将在提交表单时执行。我只是在这个阶段尝试验证表单上的
firstname
字段,以使其正常工作。一旦开始工作,我将复制代码并将其调整到其他字段(例如
lastname
uniquecode

问题是我就是不能让它工作。它使用Joomla的JFactory/getDBO连接到数据库

我的表名是
travelcodes
表单上的字段是,
firstname
lastname
uniquecode
表中的列还有
firstname
lastname
uniquecode

$firstname = '{travelcodes___firstname}';
$value = '{tablename___firstname}';
$db =JFactory::getDBO();
$query=("SELECT firstname FROM travelcodes where field = '$firstname'");
$db->setQuery($query);
$response = $db->loadResult();
if ($response == $firstname) {
    return true;
} else {
    return false;
}
在此方面的任何帮助都将不胜感激

谢谢


贝利

我使用以下设置没有问题

我认为您需要在('you_元素')之前添加JRequest::getVar,并将设置为onbeforeprocesse

$db = JFactory::getDbo();
$date = date("Y-m-d H:i:s", time());  
$value = JRequest::getVar('off_line_ap___offline_reason');
$user =& JFactory::getUser();
$uid = $user->id;
$db->setQuery("INSERT INTO d2_exchange_log (date_time, part, quantity, user_id, purpose) VALUES ('{$date}', '{$value}', '99','{$uid}', 'Test')");

$submissionsNo=$db->loadResult();