gpt4 book ai didi

php - 将数据从 PHP 表单发布到 File maker pro 12 服务器上的 File Maker 数据库

转载 作者:可可西里 更新时间:2023-11-01 01:04:29 27 4
gpt4 key购买 nike

好的,挑战来了。我在 Windows 框上托管的 Filemaker 12 服务器上有一个 File maker 数据库。我还有一个托管在 Linux 机器上的 PHP 表单。如何将数据从 PHP 表单获取到 Filemaker 数据库?这是我试过的。

<?php
define('fm_host', '131.181.###.###');
define('fm_file', 'name of the db');
define('fm_user', 'user');
define('fm_pass', 'password');
$layout_name = 'Request';
$respondent_data = array("stuff","stuff","stuff","stuff","stuff");
require_once ('FileMaker.php');
$fm = new FileMaker(fm_file, fm_host, fm_user, fm_pass);
if(FileMaker::isError($fm)){
die('Error - ' . $fm->getCode() . ' ' . $fm->getMessage());
}
$newAdd =& $fm->newAddCommand('Request', $respondent_data);
$result = $newAdd->execute();
?>

这完成时没有错误,但是当我转到 Filemaker pro 并打开我使用 Filemaker 管理控制台从服务器下载的数据库副本时,没有新记录。我已将 Filemaker 独立 PHP API 解压缩到与表单相同的目录中,它设法使用 Filemaker.php 函数。所以我很困惑为什么他们至少没有抛出错误。但是在项目的这个阶段我不在乎我只想要数据库中的数据!任何 hack 都可以,因为项目范围以数据库中的数据结束。

旁注:我已经尝试使用 ODBC 访问数据库并考虑使用 file maker pro 手动导入,但是安装在 Linux 服务器上的 PHP 在 php.ini 文件中缺少一个 com 类,我无权更改它。

我也考虑过使用 XML 做同样的事情,尽管我没有跟上它的速度。但就像凌晨 4 点的醉汉一样,我愿意试一试。

提前致谢!

最佳答案

您需要将字段名映射到数组 $respondent_data 中的值。简单的键=>值编程风格。

$respondent_data = array("field1" => "stuff", "field2" => "stuff", "field3" => "stuff", "field4" => "stuff", "field5" => "stuff");

如果你愿意,你也可以逐个字段指定,就像这样

$fm = new FileMaker(fm_file, fm_host, fm_user, fm_pass);
$cmd = $fm->newAddCommand($layout_name);
$cmd->setField("fieldname", "Value");
$cmd->setField("fieldname2", "Value2");
$cmd->setField("fieldname3", "Value3");
$result = $cmd->execute();

if(FileMaker::isError($result)){
die('Error - ' . $fm->getCode() . ' ' . $fm->getMessage());
}

在调用 $fm->execute() 之前无需调用 FileMaker::IsError 方法。那就是 PHP 使用 cURL 在 FileMaker Server 中查询 WPE 的时候。您将得到返回的 FoundSet-Object 或 Error-Object。 IsError 是一种查看 WPE 是否返回错误记录集的简单方法。

更多信息 http://www.filemaker.com/support/product/docs/12/fms/fms12_cwp_php_en.pdf

关于php - 将数据从 PHP 表单发布到 File maker pro 12 服务器上的 File Maker 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14376492/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com