【发布时间】:2014-06-20 19:34:55
【问题描述】:
在 FileMaker 中,我有(a.o.)两个相关表,其中表“studentpaper”的Betreuer_id 指的是表“Betreuer”的id。
借助 FileMaker 的 PHP API,我想访问“studentpaper”中的记录,包括相关字段。但是,后者带来了问题。考虑以下 PHP 代码:
$findCommand =& $fm->newFindAllCommand('studentpaper');
$result = $findCommand->execute();
$records = $result->getRecords();
$record = $records[0];
echo $record->getField('Titel'); // okay
echo $record->getField('Betreuer_id'); // okay
echo $record->getField('Betreuer::Name');
// ERROR: get empty string, even related record has a non-empty field
我期望“Betreuer::Name”得到正确的相关结果,通常在 FileMaker 中(以及我在 studentpaper 的布局中得到)。但是,我只得到一个空字符串。 我究竟做错了什么? FileMaker 的 PHP-API 中的关系是否与“通常”的 FileMaker 方法不同?
【问题讨论】:
-
数据库通常不会尝试读懂您的想法并意识到您也需要相关的表信息。你告诉它从 studentpaper 中获取数据,然后你从 studentpaper 中获取信息。 db 不能告诉您也需要来自 betreuer 的信息,这不是 db 的错。
-
我喜欢你在 tu.chemnitz 的快速 debian 镜像(谢谢!)但是,嘿!,这个问题没有描述到底是什么问题或你得到了哪个错误(消息)。对于 4k 代表,您应该知道 ;) 对于大多数读者来说,德语表名也可能难以理解。
-
您可能想知道分配'new'的返回值 在PHP 5 中已被弃用。这是因为所有对象变量都是引用。因此在这种情况下应该省略
&运算符:$a =& new Class().. 但是,这不会解决您的问题,只是一个提示。 -
@hek2mgl:对不起,我已经把它隐藏在代码中了。我将编辑问题。
-
@MarcB:我不是关于“读心术”。 “::”在 FileMaker 中构成适当的关系,例如在 FileMaker 脚本或“布局”设计中。