初心者のFileMaker pro Q&A (旧掲示板)

みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。

1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)

You are not logged in.

Announcement

新しい掲示板は、こちら:https://fm-aid.com/forum/t/filemaker


#1 2013-10-10 16:10:04

ミヤジ
Guest

With-PHPでFatal error: Call to undefined method FileMaker_Error::getVal

お世話になります。

カスタムWEB公開 With PHPについて質問させて下さい。

■環境
・APサーバ:Linux(apache2系+PHP5.3系)
・FMサーバ:Windows2008(FileMakerServer Pro 12)
で構築しています。

■質問内容
APサーバのPHPでFMサーバからデータを検索するPGを組もうとしてますが
execute() , getLayout , getRecords()までは使えるのですが
getValueList() , getValueListTwoFields()を使おうとすると
Fatal error: Call to undefined method FileMaker_Error::getValueList()
の様に関数が読み込めないエラーになります。

■試した事
・上記作業はFM_API_for_PHP_Standalone.zipのライブラリを展開して出来たfilemaker.phpをrequireしてます。
・FileMaker Sever Admin Console から[ セキュリティ ]タブの[データベースサーバーへの接続を保護]をOFFにしても症状は変わらず
・$__FM_CONFIG['hostspec'] をIP/ドメインの何れもNG
・$__FM_CONFIG['curlOptions'] = array(CURLOPT_SSL_VERIFYPEER => false); を追加しても変わらず。

お手数ですが、ご教授頂けます様
宜しくお願い致します。

#2 2013-10-10 22:25:13

Hiro
Member

Re: With-PHPでFatal error: Call to undefined method FileMaker_Error::getVal

FMサーバがWinなら、WebサーバもWinのIISでないと?
参考→
http://www.filemaker.co.jp/support/prod … df#page=11
http://www.filemaker.co.jp/support/prod … df#page=23

Offline

#3 2013-10-11 10:09:51

Lister
Guest

Re: With-PHPでFatal error: Call to undefined method FileMaker_Error::getVal

そうですが、使えてる関数もあるというから、使い方が間違ってるだけかも。
getValueLists()
じゃないですか。(複数形)
単数形なら引数が必要。

#4 2013-10-11 11:13:48

ミヤジ
Guest

Re: With-PHPでFatal error: Call to undefined method FileMaker_Error::getVal

Hiro様、レス有難うございます。
>FMサーバがWinなら、WebサーバもWinのIISでないと?

サーバ構成ですが、メーカに問い合わせたところAPサーバがLinuxの場合の導入事例はあるとの事です。

Lister様、レス有難うございます。

>getValueLists()

確認しましたが問題無さそうです。
ライブラリの本体を見てみたのですが、filemaker.phpに定義されてるメソッドは使えるのですが
その先のFileMaker/Implementation/Parser/FMResultSet.php
で内包される「Layout.php」「RelatedSet.php」「Record.php」「Field.php」で宣言されてる
メソッドが丸ごと使えない様です。(特にrequireエラーは出てないので、読めてはいそうなのですが。。)

一応、コードを記載させて頂きます。
1.$fm->setProperty('database' ,  "レイアウト名");
2.$fm->setProperty('hostspec' ,  "http://ドメイン名");
3.$fm->setProperty('username' ,  "ユーザ名");
4.$fm->setProperty('password' ,  "パスワード");

5.$findCommand =& $fm->newFindCommand("test検索結果");
6.$findCommand->addFindCriterion("作業日",">9/19/2013");
7.$result = $findCommand->execute();
8.$layout = $fm->getLayout('レイアウト名');
9.//$layout->getValueListTwoFields("作業日");
10.$layout->getValueLists("D完了報告書::作業日");

9,10どちらもFATALエラー、7をprint_rすると、一応データは取れてる。

引き続き、宜しくお願い致します。

#5 2013-10-11 12:27:33

Lister
Guest

Re: With-PHPでFatal error: Call to undefined method FileMaker_Error::getVal

8.がエラーになってますよね。

Fatal error: Call to undefined method FileMaker_Error::getValueList()

FileMaker_Layout|FileMaker_Error &getLayout (string $layout)
だから、&が必要?

#6 2013-10-11 16:00:28

Lister
Guest

Re: With-PHPでFatal error: Call to undefined method FileMaker_Error::getVal

つまり、8.でphp自体は正常に実行してても結果がFileMaker_LayoutでなくFileMaker_Errorになってるので、
その続きでは(関数が読み込めてないんではなく)存在しないメソッド(FileMaker_ErrorオブジェクトのgetValueList())を呼び出してます。

&は関係なくてレイアウト名が間違ってるとかいうだけなのかな。

$result->getLayout()
ではだめなの?

Registered users online in this topic: 0, guests: 1
[Bot] ClaudeBot

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.006 seconds, 7 queries executed - Memory usage: 514.07 KiB (Peak: 518.98 KiB) ]