我使用ODBC连接连接到FileMaker Pro 11服务器。我正在从eBay API导入一些信息。
当我从ebay收到地址时,它有两个字段address1和address2。在FileMaker数据库中,我们只有一个地址字段。我试图用换行符或回车符分隔两个地址但它似乎永远不会起作用。
我会尝试插入:
"$var1\n$var2"
并且FileMaker将\ n作为普通文本读取。同样适用于\ r \ n。我也尝试用以下字符串设置字符串:
<<<EOF
也没有成功。我也尝试过我读过的馅饼符号用于换行,但它不能以这种方式工作。
所以基本上..如何插入文件制作者能用php pdo和odbc理解的换行符?
答案 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中的字段作为字符串放入12
和34
之间的回车符。
答案 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";