FileMaker 11 PHP和ODBC新行/回车

时间:2011-04-12 19:02:47

标签: php odbc filemaker

我使用ODBC连接连接到FileMaker Pro 11服务器。我正在从eBay API导入一些信息。

当我从ebay收到地址时,它有两个字段address1和address2。在FileMaker数据库中,我们只有一个地址字段。我试图用换行符或回车符分隔两个地址但它似乎永远不会起作用。

我会尝试插入:

"$var1\n$var2"

并且FileMaker将\ n作为普通文本读取。同样适用于\ r \ n。我也尝试用以下字符串设置字符串:

<<<EOF 

也没有成功。我也尝试过我读过的馅饼符号用于换行,但它不能以这种方式工作。

所以基本上..如何插入文件制作者能用php pdo和odbc理解的换行符?

4 个答案:

答案 0 :(得分:2)

我做了一些测试,发现即使我做了像$var1 . ord( 10 ) . $var2这样的事情,它也无法正常工作。当我从FileMaker客户端输入ASCII字符10(\n)时,我进行了仔细检查并在字段中返回了回车符。所以这就是我解决它的方法。

我编辑了记录以插入'12<br>34'。然后我在FileMaker中为我设置的字段设置字段定义以自动输入计算。我的字段名为TestField,因此我的计算结果为Substitute( TestField; "<br>"; ¶ )。确保取消选中Do not replace existing value复选框。完成后,使用'12<br>34'编辑PHP中的字段作为字符串放入1234之间的回车符。

答案 1 :(得分:1)

遇到同样的问题时,请在google上浏览此页面。不想尝试使用自动输入cal选项,所以单独使用php ...

    $var1 . char( 13 ) . $var2  

另外,当从FileMaker字段中提取具有回车符的值时,在将其放入变量并返回到FileMaker时需要小心。例如:

将其拉入php变量:

    $variable = nl2br($record->getField("field1"));

并将其放回FileMaker:

    $record->setField('field1',str_replace('<br />',chr(13),$variable));

此致

答案 2 :(得分:1)

休息必须是这样的双引号:

$var1 . "\n" . $var2

或:

'var1' . "\n" . 'var2'

答案 3 :(得分:1)

今天使用Filemaker和Java JDBC解决了这个问题。这是可能对其他人有帮助的解决方案。

Character ch = new Character('\n');                    
String dataForFM = "Field Data Here" + ch.toString() + "More Field Data Here";