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

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

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

You are not logged in.

Announcement

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


#1 2016-08-28 09:54:04

した
Guest

PHPのAPIの設定に関して

FileMakerServe for PHP  の 設定がうまくできません。

ファイル「FileMaker.php」と
そこから指定されるサーバーが本当に起動しているかどのようにしてわかるのでしょうか?

よろしくお願いします。

#2 2016-08-28 17:36:58

さしもい
Guest

Re: PHPのAPIの設定に関して

サーバーは何?

#3 2016-08-28 21:02:16

した
Guest

Re: PHPのAPIの設定に関して

サーバーとして以下の様に設定しました。

①MacMINIにMAMPを設定
  http://hapisupu.com/2015/11/mamp-install-setting/
②FileMakerSever14を、同じMacMINIにインストール

この様な状況です。

よろしくお願いします。

#4 2016-08-29 14:26:53

yaya
Member

Re: PHPのAPIの設定に関して

FileMaker Serverは自前のapacheで動きますので、MAMPのインストールは不要です。というかMAMPでは動かない?

FileMaker Serverインストール時にphp関係も同時にインストールされるので、あれこれ設定しなくても
http://サーバーアドレス/index.html にアクセスすると「FileMaker Database Server Website」と表示されるはずです。

ディレクトリは
Macintosh HD/Library/FileMaker Server/HTTPServer/htdocs/index.html
なんで、この中にhtmlやphpを突っ込んでいけばいいです。

うちはver.13なんで多少違うかもしれません。

Offline

#5 2016-08-29 22:50:05

した
Guest

Re: PHPのAPIの設定に関して

ありがとうございます。

>http://サーバーアドレス/index.html にアクセスすると「FileMaker Database Server Website」と表示されるはずです。
→ これは、出来ました。

>Macintosh HD/Library/FileMaker Server/HTTPServer/htdocs/index.html
→ これもしているのですが??  どうも思った様にいかなくて。。

FileMaker.php  これが効いている事は、何をすればわかるでしょうか?

以下の様に、①→②③を動かしているのですが、
①は表示されて文字も入力できるのですが、ボタン「投稿」を押すと、
画面にスクリプト文字が表示されてしまい、FM上もデータ更新されません。

①ファイル「postform.html」
<html>
<head>
    <meta charset="UTF-8">
</head>
<body>
    <h1>ミニブログ</h1>
   
    <form action="post.php" method="post">
        <textarea name="contents" cols="35" rows="4" maxlength="140"></textarea>
        <input type="submit" value="投稿">
    </form>
</body>
</html>


②ファイル「server.php」
<?php
$fm = newFileMaker('miniblog' , 'localhost' , 'php' , 'php');
?>

③ファイル「post.php」
<?php
require_once('FileMaker.php');
require_once('server.php');

$contents = $_POST['contents'];

$add =& $fm->newAddcommand('post_master');
$add->setField('contents',$contents);
$result= $add->execute();


よろしくお願いします。

#6 2016-08-30 07:57:20

藤 稔
Guest

Re: PHPのAPIの設定に関して

AdminConsoleでPHPを有効にしてますか?

しかし[画面にスクリプト文字が表示され]ということは、APIでなくPHP自体が無効になってるわけですが、Macの場合ファイルに実行フラグつけたりしないといけないのかな?

#7 2016-08-30 13:51:21

yaya
Member

Re: PHPのAPIの設定に関して

FileMaker Serverをインストールするときにphpを有効にするステップがあったと思いますが、昔のことなので忘れました。
場合によっては、ここで撥ねられることもあったなー。
藤さんのおっしゃる通り、AdminConsoleでphpを有効にすれば大丈夫だと思います。

確認用に以下の中身でphpinfo.phpというファイルをhttp rootに置いとくと便利ですよ。
<?php
  phpinfo();
?>

Offline

#8 2016-08-30 14:16:01

藤 稔
Guest

Re: PHPのAPIの設定に関して

先にMAMPをインストールしてるんで、「phpを有効にするステップ」のときにFMSと同時にインストールするPHPを使用する設定にしなかったんじゃないかな。
最初からFMSだけインストールし直したほうが早いかも。

#9 2016-08-30 22:59:54

した
Guest

Re: PHPのAPIの設定に関して

藤 稔さん yayaさん
お返事をいただきありがとうございます。

>AdminConsoleでPHPを有効にしてますか?

→ しています。

>FileMaker Serverをインストールするときにphpを有効にするステップがあったと思いますが、
→ ありました。有効にしています。

>確認用に以下の中身でphpinfo.phpというファイルをhttp rootに置いとくと便利ですよ。
→http://localhost/phpinfo.php これを実行すると、青い、紫のPHPの画面が出ました。

>最初からFMSだけインストールし直したほうが早いかも。
→ 再インストールということでしょうか?
  試してみます。

ありがとうございます。

#10 2016-08-31 08:05:28

した
Guest

Re: PHPのAPIの設定に関して

再インストールしましたが、ダメでした。。

#11 2016-08-31 12:05:50

yaya
Member

Re: PHPのAPIの設定に関して

phpinfo.phpでインフォメーションテーブルが出てるということは、phpは動作しています。
なのに、post.phpはスクリプトが出てくるというのは考えられないです。
お書きになっている内容なら白紙ページか、エラーメッセージが出るはずですが。

AdminConsoleのアクティビティでminiblog.fmp12のPHPに●は付いていますか?

Offline

#12 2016-08-31 12:16:11

yaya
Member

Re: PHPのAPIの設定に関して

phpが動いている前提ですが、動作チェックなら newAddcommand よりも newFindCommand の方がファイル1つで済むので簡単です。
また結果に対してエラーチェックすると原因がわかることがあります。

if (FileMaker::isError($result)) {
  echo $result->getCode(), "<br>";
  echo $result->getMessage();
} else {
  echo "OK";
}

Offline

#13 2016-08-31 13:49:33

した
Guest

Re: PHPのAPIの設定に関して

yayaさん

ご連絡をいただきありがとうございます。

>AdminConsoleのアクティビティでminiblog.fmp12のPHPに●は付いていますか?
→ 大丈夫です。

>if (FileMaker::isError($result)) {
>  echo $result->getCode(), "<br>";
>  echo $result->getMessage();
>} else {
>  echo "OK";
>}

→ これは、このまま書いて、URLに貼り付けて実行させればいいのでしょうか?
  PHPは勉強を始めているところでよく理解できていないのです。

よろしくお願いします。

#14 2016-08-31 13:55:14

した
Guest

Re: PHPのAPIの設定に関して

やはり、文字しか出てこないです。。

#15 2016-08-31 14:13:21

yaya
Member

Re: PHPのAPIの設定に関して

>→http://localhost/phpinfo.php これを実行すると、青い、紫のPHPの画面が出ました。

読み間違えたかな? phpinfoで画像検索してください。こういう画面になってますか?

>→ これは、このまま書いて、URLに貼り付けて実行させればいいのでしょうか?
post.phpの末尾に追加して下さい。FileMaker.phpのエラーメッセージが出ます。

あと post.phpの先頭の"<?php"の次に
ini_set("display_errors", 1);
を追加して下さい。これでphpのエラーメッセージが出るはず

Offline

#16 2016-08-31 15:03:09

した
Guest

Re: PHPのAPIの設定に関して

>読み間違えたかな? phpinfoで画像検索してください。こういう画面になってますか?
→ なっています。

>post.phpの末尾に追加して下さい。FileMaker.phpのエラーメッセージが出ます。
>あと post.phpの先頭の"<?php"の次に
>ini_set("display_errors", 1);
>を追加して下さい。これでphpのエラーメッセージが出るはず
→ ご指導ありがとうございます。
  実行してみましたが、やはり文字しか出てきません。。

logsフォルダーにあるファイルを見ると以下の記述がありました。

local:443:0 server certificate does NOT include an ID which matches the server name

これは、どういう意味なのでしょうか?

#17 2016-08-31 15:07:00

した
Guest

Re: PHPのAPIの設定に関して

「http://localhost/post.php」
これで、実行すると、以下のエラーがでました。

Fatal error: Call to undefined function newFileMaker() in /Library/FileMaker Server/HTTPServer/htdocs/server.php on line 2

どのように理解すればいいのでしょうか?

#18 2016-08-31 15:24:02

scripter
Guest

Re: PHPのAPIの設定に関して

newの後にスペースが抜けている。

#19 2016-08-31 15:38:43

した
Guest

Re: PHPのAPIの設定に関して

scripterさん
アドバイスありがとうございます。

以下のように修正して実行しましたが、
やはり文字しか出てきませんでした。。

ただ、
「http://localhost/post.php」で実行すると

-----------
localhost ページは機能していません

localhost では現在このリクエストを処理できません。
HTTP ERROR 500
------------

このようなエラーがブラウザに出てきました。

■post.php
<?php
ini_set("display_errors", 1);

require_once('FileMaker.php');
require_once('server.php');

$contents = $_POST['contents'];

$add =& $fm->new Addcommand('post_master');
$add->setField('contents',$contents);
$result= $add->execute();

if (FileMaker::isError($result)) {
  echo $result->getCode(), "<br>";
  echo $result->getMessage();
} else {
  echo "OK";
}

#20 2016-08-31 18:03:07

yaya
Member

Re: PHPのAPIの設定に関して

server.php にスペースが足りず
(誤)$fm = newFileMaker('miniblog' , 'localhost' , 'php' , 'php');
(正)$fm = new FileMaker('miniblog' , 'localhost' , 'php' , 'php');

post.php のスペースが余分
(誤)$add =& $fm->new Addcommand('post_master');
(正)$add =& $fm->newAddcommand('post_master');
です。

post.phpを実行するとpost_masterレイアウトでデータが空のレコードが作られます。
FileMakerのフィールド定義で空欄不可にしておくと「Field requires a valid value」というエラーが返って来ますね。
手元で試す限りでは何も問題ないけどなー。

Offline

#21 2016-09-02 13:45:50

した
Guest

Re: PHPのAPIの設定に関して

ありがとうございます。

お返事が遅れてすみません。

試させていただきます。

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

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.008 seconds, 9 queries executed - Memory usage: 563.63 KiB (Peak: 584.53 KiB) ]