SlideShare a Scribd company logo
1 of 15
FMCakeMix


   2009/10/12 | Kentaro Suzuki
• Web
        FileMaker              Web




          2009/10/12 | Kentaro Suzuki
•   CakePHP
•   FMCakeMix
•   MVC
•   FMCakeMix
•
•
•
•
•
          2009/10/12 | Kentaro Suzuki
CakePHP

• CakePHP enables PHP web applications. to
  rapidly develop robust
                         users at all levels
    Google         CakePHP        PHP        Web




•                                           PHP
        Web

•
              2009/10/12 | Kentaro Suzuki
FMCakeMix

• FMCakeMix: A Full Read/Write Datasource
  for FileMaker By Alex Gibbons
• CakePHP                    FileMaker


•            Web              (XML)

• FX.php
           2009/10/12 | Kentaro Suzuki
MVC

MVC
 3                                  Wikipedia


•     (Model)
 →


•     (View)

 → 
 UI

•            (Controller)

      →

      2009/10/12 | Kentaro Suzuki
FMCakeMix
•   FMCakeMix                   CakePHP


    •   ActiveRecord           O/R

        •   Fx   FileMaker                           ...


        •            SQL

        •   DBMS

    •
    •

                       2009/10/12 | Kentaro Suzuki
•   FileMaker Server
    •   Web                  XML

•   CakePHP
    •   http://cakephp.jp/

•   FMCakeMix
    •   http://github.com/beezwax/FMCakeMix/

    •   Install the dbo_fmcakemix.php file into yourcakeinstall/app/models/
        datasources/dbo

•   Fx.php
    •   FX.php, FX_Error.php, FX_Constants.php, and image_proxy.php files at
        the root of the yourcakeinstall/vendors folder.
                       2009/10/12 | Kentaro Suzuki
FileMaker
                                      users
•               oreno_db.fp7
•            users
    •                id

    •                name
    •                email
※ fmxml


            2009/10/12 | Kentaro Suzuki
CakePHP
 /app/config/database.php
 <?php
 class DATABASE_CONFIG {
    var $default = array(
       'driver' => 'fmcakemix',
       'database' => 'oreno_db',
       'dataSourceType' => 'FMPro7',
       'persistent' => false,
       'scheme' => 'http',
       'port' => 16014,
       'host' => '127.0.0.1',
       'login' => '',
       'password' => '',
       'encoding' => 'utf8'
    );
 }
 ?>
           2009/10/12 | Kentaro Suzuki
/app/models/user.php

<?php
class User extends AppModel
{
  var $fmDatabaseName = 'oreno_db';
  var $defaultLayout = 'users';
}
?>

         2009/10/12 | Kentaro Suzuki
/controllers/users_controller.php

<?php
class UsersController extends AppController
{
   var $paginate = array('limit' => 15);
   function index() {
         //
         $result = $this->paginate('User');
         $this->set('rows', $result);
     }
}
?>
               2009/10/12 | Kentaro Suzuki
/app/views/users/index.ctp

<table>
     <tr>
        <th><?php echo $paginator->sort('#', 'id');?></th>
        <th><?php echo $paginator->sort('Name', 'name');?></th>
        <th><?php echo $paginator->sort('E-mail', 'email');?></th>
     </tr>
     <?php foreach($rows as $r): ?>
        <tr>
           <td><?php echo h($r['User']['id']);?></td>
           <td><?php echo h($r['User']['name']);?></td>
           <td><?php echo h($r['User']['email']);?></td>
        </tr>
     <?php endforeach;?>
</table>
<?php echo $paginator->numbers();?>
                  2009/10/12 | Kentaro Suzuki
•



    2009/10/12 | Kentaro Suzuki
• CakePHP       Web


• FMCakeMix                     CakePHP




•                                  XSS    CSRF


            2009/10/12 | Kentaro Suzuki

More Related Content

What's hot

Front End Website Optimization
Front End Website OptimizationFront End Website Optimization
Front End Website OptimizationGerard Sychay
 
WordPress Performance
WordPress PerformanceWordPress Performance
WordPress Performancedsero
 
DrupalCon Barcelona 2015
DrupalCon Barcelona 2015DrupalCon Barcelona 2015
DrupalCon Barcelona 2015Daniel Kanchev
 
Introduction to node.js
Introduction to  node.jsIntroduction to  node.js
Introduction to node.jsMd. Sohel Rana
 
Mambo (2006) Presentation on CMS
Mambo (2006) Presentation on CMSMambo (2006) Presentation on CMS
Mambo (2006) Presentation on CMSJohn Patten
 
High performance web server
High performance web serverHigh performance web server
High performance web serverWataru OKAMOTO
 
002. Working with Webpack
002. Working with Webpack002. Working with Webpack
002. Working with WebpackBinh Quan Duc
 
How to Speed Up Your Joomla! Site
How to Speed Up Your Joomla! SiteHow to Speed Up Your Joomla! Site
How to Speed Up Your Joomla! SiteDaniel Kanchev
 
Mastering WordPress Vol.1
Mastering WordPress Vol.1Mastering WordPress Vol.1
Mastering WordPress Vol.1Wataru OKAMOTO
 
大众点评网 Web开发之路
大众点评网 Web开发之路大众点评网 Web开发之路
大众点评网 Web开发之路alcoholwang
 
Write your first WordPress plugin
Write your first WordPress pluginWrite your first WordPress plugin
Write your first WordPress pluginAnthony Montalbano
 
Debugging WordPress Performance using EasyEngine
Debugging WordPress Performance using EasyEngineDebugging WordPress Performance using EasyEngine
Debugging WordPress Performance using EasyEnginertCamp
 
Web Application Development using MVC Framework Kohana
Web Application Development using MVC Framework KohanaWeb Application Development using MVC Framework Kohana
Web Application Development using MVC Framework KohanaArafat Rahman
 
Hidden Secrets For A Hack-Proof Joomla! Site
Hidden Secrets For A Hack-Proof Joomla! SiteHidden Secrets For A Hack-Proof Joomla! Site
Hidden Secrets For A Hack-Proof Joomla! SiteDaniel Kanchev
 
Joomla 3 JLayout's - Joomladay Netherlands 2014 #jd14nl
Joomla 3 JLayout's - Joomladay Netherlands 2014 #jd14nlJoomla 3 JLayout's - Joomladay Netherlands 2014 #jd14nl
Joomla 3 JLayout's - Joomladay Netherlands 2014 #jd14nlPhilip Locke
 
Speed up with hiphop php 2014 01-22
Speed up with hiphop php 2014 01-22Speed up with hiphop php 2014 01-22
Speed up with hiphop php 2014 01-22Võ Duy Tuấn
 
Django for n00bs
Django for n00bsDjango for n00bs
Django for n00bsJen Zajac
 
I Can Haz More Performanz?
I Can Haz More Performanz?I Can Haz More Performanz?
I Can Haz More Performanz?Andy Melichar
 

What's hot (20)

Front End Website Optimization
Front End Website OptimizationFront End Website Optimization
Front End Website Optimization
 
WordPress Performance
WordPress PerformanceWordPress Performance
WordPress Performance
 
Mobile for web
Mobile for webMobile for web
Mobile for web
 
DrupalCon Barcelona 2015
DrupalCon Barcelona 2015DrupalCon Barcelona 2015
DrupalCon Barcelona 2015
 
Introduction to node.js
Introduction to  node.jsIntroduction to  node.js
Introduction to node.js
 
Mambo (2006) Presentation on CMS
Mambo (2006) Presentation on CMSMambo (2006) Presentation on CMS
Mambo (2006) Presentation on CMS
 
High performance web server
High performance web serverHigh performance web server
High performance web server
 
002. Working with Webpack
002. Working with Webpack002. Working with Webpack
002. Working with Webpack
 
How to Speed Up Your Joomla! Site
How to Speed Up Your Joomla! SiteHow to Speed Up Your Joomla! Site
How to Speed Up Your Joomla! Site
 
The wp config.php
The wp config.phpThe wp config.php
The wp config.php
 
Mastering WordPress Vol.1
Mastering WordPress Vol.1Mastering WordPress Vol.1
Mastering WordPress Vol.1
 
大众点评网 Web开发之路
大众点评网 Web开发之路大众点评网 Web开发之路
大众点评网 Web开发之路
 
Write your first WordPress plugin
Write your first WordPress pluginWrite your first WordPress plugin
Write your first WordPress plugin
 
Debugging WordPress Performance using EasyEngine
Debugging WordPress Performance using EasyEngineDebugging WordPress Performance using EasyEngine
Debugging WordPress Performance using EasyEngine
 
Web Application Development using MVC Framework Kohana
Web Application Development using MVC Framework KohanaWeb Application Development using MVC Framework Kohana
Web Application Development using MVC Framework Kohana
 
Hidden Secrets For A Hack-Proof Joomla! Site
Hidden Secrets For A Hack-Proof Joomla! SiteHidden Secrets For A Hack-Proof Joomla! Site
Hidden Secrets For A Hack-Proof Joomla! Site
 
Joomla 3 JLayout's - Joomladay Netherlands 2014 #jd14nl
Joomla 3 JLayout's - Joomladay Netherlands 2014 #jd14nlJoomla 3 JLayout's - Joomladay Netherlands 2014 #jd14nl
Joomla 3 JLayout's - Joomladay Netherlands 2014 #jd14nl
 
Speed up with hiphop php 2014 01-22
Speed up with hiphop php 2014 01-22Speed up with hiphop php 2014 01-22
Speed up with hiphop php 2014 01-22
 
Django for n00bs
Django for n00bsDjango for n00bs
Django for n00bs
 
I Can Haz More Performanz?
I Can Haz More Performanz?I Can Haz More Performanz?
I Can Haz More Performanz?
 

Similar to FMCakeMixってウマいの?

Speed up your developments with Symfony2
Speed up your developments with Symfony2Speed up your developments with Symfony2
Speed up your developments with Symfony2Hugo Hamon
 
What's New In Laravel 5
What's New In Laravel 5What's New In Laravel 5
What's New In Laravel 5Darren Craig
 
Windows Server AppFabric Caching - What it is & when you should use it?
Windows Server AppFabric Caching - What it is & when you should use it?Windows Server AppFabric Caching - What it is & when you should use it?
Windows Server AppFabric Caching - What it is & when you should use it?Robert MacLean
 
Single page apps_with_cf_and_angular[1]
Single page apps_with_cf_and_angular[1]Single page apps_with_cf_and_angular[1]
Single page apps_with_cf_and_angular[1]ColdFusionConference
 
Some tips to improve developer experience with Symfony
Some tips to improve developer experience with SymfonySome tips to improve developer experience with Symfony
Some tips to improve developer experience with Symfonytyomo4ka
 
Building Single Page Application (SPA) with Symfony2 and AngularJS
Building Single Page Application (SPA) with Symfony2 and AngularJSBuilding Single Page Application (SPA) with Symfony2 and AngularJS
Building Single Page Application (SPA) with Symfony2 and AngularJSAntonio Peric-Mazar
 
Profiling PHP with Xdebug / Webgrind
Profiling PHP with Xdebug / WebgrindProfiling PHP with Xdebug / Webgrind
Profiling PHP with Xdebug / WebgrindSam Keen
 
Grâce aux tags Varnish, j'ai switché ma prod sur Raspberry Pi
Grâce aux tags Varnish, j'ai switché ma prod sur Raspberry PiGrâce aux tags Varnish, j'ai switché ma prod sur Raspberry Pi
Grâce aux tags Varnish, j'ai switché ma prod sur Raspberry PiJérémy Derussé
 
symfony on action - WebTech 207
symfony on action - WebTech 207symfony on action - WebTech 207
symfony on action - WebTech 207patter
 
Fusion Applications Administration Overview
Fusion Applications Administration OverviewFusion Applications Administration Overview
Fusion Applications Administration OverviewVihangAstik
 
Optimizing CakePHP 2.x Apps
Optimizing CakePHP 2.x AppsOptimizing CakePHP 2.x Apps
Optimizing CakePHP 2.x AppsJuan Basso
 
Managing and Monitoring Application Performance
Managing and Monitoring Application PerformanceManaging and Monitoring Application Performance
Managing and Monitoring Application PerformanceSebastian Marek
 
Installing php 7.4 Nginx Laravel 7.x on Centos 8
Installing php 7.4 Nginx Laravel 7.x on Centos 8Installing php 7.4 Nginx Laravel 7.x on Centos 8
Installing php 7.4 Nginx Laravel 7.x on Centos 8Raja Rozali Raja Hasan
 
Leveraging the Power of Custom Elements in Gutenberg
Leveraging the Power of Custom Elements in GutenbergLeveraging the Power of Custom Elements in Gutenberg
Leveraging the Power of Custom Elements in GutenbergFelix Arntz
 
Build powerfull and smart web applications with Symfony2
Build powerfull and smart web applications with Symfony2Build powerfull and smart web applications with Symfony2
Build powerfull and smart web applications with Symfony2Hugo Hamon
 
SaltConf14 - Ben Cane - Using SaltStack in High Availability Environments
SaltConf14 - Ben Cane - Using SaltStack in High Availability EnvironmentsSaltConf14 - Ben Cane - Using SaltStack in High Availability Environments
SaltConf14 - Ben Cane - Using SaltStack in High Availability EnvironmentsSaltStack
 
Web Components v1
Web Components v1Web Components v1
Web Components v1Mike Wilcox
 

Similar to FMCakeMixってウマいの? (20)

Speed up your developments with Symfony2
Speed up your developments with Symfony2Speed up your developments with Symfony2
Speed up your developments with Symfony2
 
What's New In Laravel 5
What's New In Laravel 5What's New In Laravel 5
What's New In Laravel 5
 
Windows Server AppFabric Caching - What it is & when you should use it?
Windows Server AppFabric Caching - What it is & when you should use it?Windows Server AppFabric Caching - What it is & when you should use it?
Windows Server AppFabric Caching - What it is & when you should use it?
 
Cascade
CascadeCascade
Cascade
 
Single page apps_with_cf_and_angular[1]
Single page apps_with_cf_and_angular[1]Single page apps_with_cf_and_angular[1]
Single page apps_with_cf_and_angular[1]
 
Some tips to improve developer experience with Symfony
Some tips to improve developer experience with SymfonySome tips to improve developer experience with Symfony
Some tips to improve developer experience with Symfony
 
Building Single Page Application (SPA) with Symfony2 and AngularJS
Building Single Page Application (SPA) with Symfony2 and AngularJSBuilding Single Page Application (SPA) with Symfony2 and AngularJS
Building Single Page Application (SPA) with Symfony2 and AngularJS
 
Profiling PHP with Xdebug / Webgrind
Profiling PHP with Xdebug / WebgrindProfiling PHP with Xdebug / Webgrind
Profiling PHP with Xdebug / Webgrind
 
Grâce aux tags Varnish, j'ai switché ma prod sur Raspberry Pi
Grâce aux tags Varnish, j'ai switché ma prod sur Raspberry PiGrâce aux tags Varnish, j'ai switché ma prod sur Raspberry Pi
Grâce aux tags Varnish, j'ai switché ma prod sur Raspberry Pi
 
symfony on action - WebTech 207
symfony on action - WebTech 207symfony on action - WebTech 207
symfony on action - WebTech 207
 
Fusion Applications Administration Overview
Fusion Applications Administration OverviewFusion Applications Administration Overview
Fusion Applications Administration Overview
 
Optimizing CakePHP 2.x Apps
Optimizing CakePHP 2.x AppsOptimizing CakePHP 2.x Apps
Optimizing CakePHP 2.x Apps
 
Managing and Monitoring Application Performance
Managing and Monitoring Application PerformanceManaging and Monitoring Application Performance
Managing and Monitoring Application Performance
 
Stackato Presentation Techzone 2013
Stackato Presentation Techzone 2013Stackato Presentation Techzone 2013
Stackato Presentation Techzone 2013
 
Installing php 7.4 Nginx Laravel 7.x on Centos 8
Installing php 7.4 Nginx Laravel 7.x on Centos 8Installing php 7.4 Nginx Laravel 7.x on Centos 8
Installing php 7.4 Nginx Laravel 7.x on Centos 8
 
Leveraging the Power of Custom Elements in Gutenberg
Leveraging the Power of Custom Elements in GutenbergLeveraging the Power of Custom Elements in Gutenberg
Leveraging the Power of Custom Elements in Gutenberg
 
Build powerfull and smart web applications with Symfony2
Build powerfull and smart web applications with Symfony2Build powerfull and smart web applications with Symfony2
Build powerfull and smart web applications with Symfony2
 
URL Design
URL DesignURL Design
URL Design
 
SaltConf14 - Ben Cane - Using SaltStack in High Availability Environments
SaltConf14 - Ben Cane - Using SaltStack in High Availability EnvironmentsSaltConf14 - Ben Cane - Using SaltStack in High Availability Environments
SaltConf14 - Ben Cane - Using SaltStack in High Availability Environments
 
Web Components v1
Web Components v1Web Components v1
Web Components v1
 

Recently uploaded

A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????blackmambaettijean
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rick Flair
 

Recently uploaded (20)

A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...
 

FMCakeMixってウマいの?

  • 1. FMCakeMix 2009/10/12 | Kentaro Suzuki
  • 2. • Web FileMaker Web 2009/10/12 | Kentaro Suzuki
  • 3. CakePHP • FMCakeMix • MVC • FMCakeMix • • • • • 2009/10/12 | Kentaro Suzuki
  • 4. CakePHP • CakePHP enables PHP web applications. to rapidly develop robust users at all levels Google CakePHP PHP Web • PHP Web • 2009/10/12 | Kentaro Suzuki
  • 5. FMCakeMix • FMCakeMix: A Full Read/Write Datasource for FileMaker By Alex Gibbons • CakePHP FileMaker • Web (XML) • FX.php 2009/10/12 | Kentaro Suzuki
  • 6. MVC MVC 3 Wikipedia • (Model) → • (View) → UI • (Controller) → 2009/10/12 | Kentaro Suzuki
  • 7. FMCakeMix • FMCakeMix CakePHP • ActiveRecord O/R • Fx FileMaker ... • SQL • DBMS • • 2009/10/12 | Kentaro Suzuki
  • 8. FileMaker Server • Web XML • CakePHP • http://cakephp.jp/ • FMCakeMix • http://github.com/beezwax/FMCakeMix/ • Install the dbo_fmcakemix.php file into yourcakeinstall/app/models/ datasources/dbo • Fx.php • FX.php, FX_Error.php, FX_Constants.php, and image_proxy.php files at the root of the yourcakeinstall/vendors folder. 2009/10/12 | Kentaro Suzuki
  • 9. FileMaker users • oreno_db.fp7 • users • id • name • email ※ fmxml 2009/10/12 | Kentaro Suzuki
  • 10. CakePHP /app/config/database.php <?php class DATABASE_CONFIG { var $default = array( 'driver' => 'fmcakemix', 'database' => 'oreno_db', 'dataSourceType' => 'FMPro7', 'persistent' => false, 'scheme' => 'http', 'port' => 16014, 'host' => '127.0.0.1', 'login' => '', 'password' => '', 'encoding' => 'utf8' ); } ?> 2009/10/12 | Kentaro Suzuki
  • 11. /app/models/user.php <?php class User extends AppModel { var $fmDatabaseName = 'oreno_db'; var $defaultLayout = 'users'; } ?> 2009/10/12 | Kentaro Suzuki
  • 12. /controllers/users_controller.php <?php class UsersController extends AppController { var $paginate = array('limit' => 15); function index() { // $result = $this->paginate('User'); $this->set('rows', $result); } } ?> 2009/10/12 | Kentaro Suzuki
  • 13. /app/views/users/index.ctp <table> <tr> <th><?php echo $paginator->sort('#', 'id');?></th> <th><?php echo $paginator->sort('Name', 'name');?></th> <th><?php echo $paginator->sort('E-mail', 'email');?></th> </tr> <?php foreach($rows as $r): ?> <tr> <td><?php echo h($r['User']['id']);?></td> <td><?php echo h($r['User']['name']);?></td> <td><?php echo h($r['User']['email']);?></td> </tr> <?php endforeach;?> </table> <?php echo $paginator->numbers();?> 2009/10/12 | Kentaro Suzuki
  • 14. 2009/10/12 | Kentaro Suzuki
  • 15. • CakePHP Web • FMCakeMix CakePHP • XSS CSRF 2009/10/12 | Kentaro Suzuki

Editor's Notes

  1. &amp;#x30AB;&amp;#x30B9;&amp;#x30BF;&amp;#x30E0;Web&amp;#x516C;&amp;#x958B;&amp;#x306E;&amp;#x8A71;&amp;#x3067;&amp;#x3059;&amp;#x3002;&amp;#x8208;&amp;#x5473;&amp;#x306E;&amp;#x3042;&amp;#x308B;&amp;#x65B9;&amp;#x306E;&amp;#x3054;&amp;#x53C2;&amp;#x8003;&amp;#x306B;&amp;#x306A;&amp;#x308C;&amp;#x3070;&amp;#x3046;&amp;#x308C;&amp;#x3057;&amp;#x3044;&amp;#x3067;&amp;#x3059;&amp;#x3002; &amp;#x305D;&amp;#x3046;&amp;#x3044;&amp;#x3048;&amp;#x3070;&amp;#x3001;&amp;#x67D0;&amp;#x5DE8;&amp;#x5927;&amp;#x63B2;&amp;#x793A;&amp;#x677F;&amp;#x306E;FIleMaker&amp;#x30B9;&amp;#x30EC;&amp;#x30C3;&amp;#x30C9;&amp;#x3067;&amp;#x3082;Web&amp;#x30A2;&amp;#x30D7;&amp;#x30EA;&amp;#x30B1;&amp;#x30FC;&amp;#x30B7;&amp;#x30E7;&amp;#x30F3;&amp;#x306E;&amp;#x8A71;&amp;#x984C;&amp;#x304C;&amp;#x3042;&amp;#x304C;&amp;#x3063;&amp;#x3066;&amp;#x3044;&amp;#x307E;&amp;#x3057;&amp;#x305F;&amp;#x304C;...
  2. &amp;#x306F;&amp;#x3044;&amp;#x3001;&amp;#x767A;&amp;#x8868;&amp;#x306E;&amp;#x6982;&amp;#x8981;&amp;#x3067;&amp;#x3059;&amp;#x304C;&amp;#x3001;&amp;#x3061;&amp;#x3087;&amp;#x3063;&amp;#x3068;&amp;#x30AE;&amp;#x30EA;&amp;#x30AE;&amp;#x30EA;&amp;#x3063;&amp;#x307D;&amp;#x3044;&amp;#x306E;&amp;#x3067;&amp;#x3001;&amp;#x65E9;&amp;#x8DB3;&amp;#x3067;&amp;#x3044;&amp;#x304D;&amp;#x307E;&amp;#x3059;&amp;#x3002; Web&amp;#x516C;&amp;#x958B;&amp;#x306B;&amp;#x8208;&amp;#x5473;&amp;#x304C;&amp;#x3042;&amp;#x308B;&amp;#x3093;&amp;#x3060;&amp;#x3051;&amp;#x3069;&amp;#x3001;&amp;#x610F;&amp;#x5473;&amp;#x4E0D;&amp;#x660E;&amp;#x3067;&amp;#x3057;&amp;#x305F;&amp;#x3002;&amp;#x3068;&amp;#x8A00;&amp;#x3046;&amp;#x65B9;&amp;#x304C;&amp;#x3044;&amp;#x3089;&amp;#x3063;&amp;#x3057;&amp;#x3083;&amp;#x3044;&amp;#x307E;&amp;#x3057;&amp;#x305F;&amp;#x3089;&amp;#x3001;&amp;#x98F2;&amp;#x307F;&amp;#x4F1A;&amp;#x306E;&amp;#x6642;&amp;#x306B;&amp;#x3067;&amp;#x3082;&amp;#x6C17;&amp;#x8EFD;&amp;#x306B;&amp;#x3064;&amp;#x304B;&amp;#x307E;&amp;#x3048;&amp;#x3066;&amp;#x304F;&amp;#x3060;&amp;#x3055;&amp;#x3044;&amp;#x3002;
  3. CakePHP&amp;#x306F;&amp;#x30AA;&amp;#x30FC;&amp;#x30D7;&amp;#x30F3;&amp;#x30BD;&amp;#x30FC;&amp;#x30B9;&amp;#x3067;&amp;#x4F5C;&amp;#x6210;&amp;#x3055;&amp;#x308C;&amp;#x3066;&amp;#x3044;&amp;#x308B;&amp;#x3001;PHP&amp;#x306E;Web&amp;#x30A2;&amp;#x30D7;&amp;#x30EA;&amp;#x30B1;&amp;#x30FC;&amp;#x30B7;&amp;#x30E7;&amp;#x30F3;&amp;#x30D5;&amp;#x30EC;&amp;#x30FC;&amp;#x30E0;&amp;#x30EF;&amp;#x30FC;&amp;#x30AF;&amp;#x3067;&amp;#x3059;&amp;#x3002; Ruby on Rails&amp;#x306E;&amp;#x5F71;&amp;#x97FF;&amp;#x3092;&amp;#x975E;&amp;#x5E38;&amp;#x306B;&amp;#x53D7;&amp;#x3051;&amp;#x3066;&amp;#x3044;&amp;#x308B;&amp;#x306E;&amp;#x3067;&amp;#x3001;&amp;#x3084;&amp;#x306F;&amp;#x308A;&amp;#x300C;&amp;#x8A2D;&amp;#x5B9A;&amp;#x3088;&amp;#x308A;&amp;#x898F;&amp;#x7D04;&amp;#x300D;&amp;#x304C;&amp;#x91CD;&amp;#x8996;&amp;#x3055;&amp;#x308C;&amp;#x3066;&amp;#x304A;&amp;#x308A;&amp;#x3001;&amp;#x5C11;&amp;#x306A;&amp;#x3044;&amp;#x30B3;&amp;#x30FC;&amp;#x30C9;&amp;#x91CF;&amp;#x3067;Web&amp;#x30A2;&amp;#x30D7;&amp;#x30EA;&amp;#x30B1;&amp;#x30FC;&amp;#x30B7;&amp;#x30E7;&amp;#x30F3;&amp;#x3092;&amp;#x69CB;&amp;#x7BC9;&amp;#x3059;&amp;#x308B;&amp;#x3053;&amp;#x3068;&amp;#x304C;&amp;#x3067;&amp;#x304D;&amp;#x307E;&amp;#x3059;&amp;#x3002;
  4. FMCakeMix&amp;#x306F;&amp;#x3001;&amp;#x524D;&amp;#x8FF0;&amp;#x306E;CakePHP&amp;#x3067;&amp;#x4F7F;&amp;#x7528;&amp;#x3067;&amp;#x304D;&amp;#x308B;FileMaker&amp;#x7528;&amp;#x306E;&amp;#x30C7;&amp;#x30FC;&amp;#x30BF;&amp;#x30D9;&amp;#x30FC;&amp;#x30B9;&amp;#x30C9;&amp;#x30E9;&amp;#x30A4;&amp;#x30D0;&amp;#x30FC;&amp;#x3067;&amp;#x3059;&amp;#x3002; &amp;#x5185;&amp;#x90E8;&amp;#x7684;&amp;#x306B;FX.php&amp;#x3092;&amp;#x5229;&amp;#x7528;&amp;#x3057;&amp;#x3066;&amp;#x3044;&amp;#x308B;&amp;#x306E;&amp;#x3067;&amp;#x3001;&amp;#x30AB;&amp;#x30B9;&amp;#x30BF;&amp;#x30E0;Web&amp;#x516C;&amp;#x958B;&amp;#x6A5F;&amp;#x80FD;&amp;#x306F;XML&amp;#x3092;&amp;#x5229;&amp;#x7528;&amp;#x3059;&amp;#x308B;&amp;#x3053;&amp;#x3068;&amp;#x306B;&amp;#x306A;&amp;#x308A;&amp;#x307E;&amp;#x3059;&amp;#x3002;
  5. CakePHP&amp;#x306F;MVC&amp;#x69CB;&amp;#x9020;&amp;#x306E;&amp;#x30A2;&amp;#x30D7;&amp;#x30EA;&amp;#x30B1;&amp;#x30FC;&amp;#x30B7;&amp;#x30E7;&amp;#x30F3;&amp;#x30D5;&amp;#x30EC;&amp;#x30FC;&amp;#x30E0;&amp;#x30EF;&amp;#x30FC;&amp;#x30AF;&amp;#x3067;&amp;#x3059;&amp;#x304C;&amp;#x3001;MVC&amp;#x3068;&amp;#x3044;&amp;#x3046;&amp;#x8A00;&amp;#x8449;&amp;#x3092;&amp;#x805E;&amp;#x3044;&amp;#x305F;&amp;#x3053;&amp;#x3068;&amp;#x306A;&amp;#x3044;&amp;#x305F;&amp;#x3081;&amp;#x306B;&amp;#x7C21;&amp;#x5358;&amp;#x306B;&amp;#x8AAC;&amp;#x660E;&amp;#x3057;&amp;#x307E;&amp;#x3059;&amp;#x3002;&amp;#x30D7;&amp;#x30ED;&amp;#x30B0;&amp;#x30E9;&amp;#x30E0;&amp;#x3092;&amp;#x3001;&amp;#x30E2;&amp;#x30C7;&amp;#x30EB;&amp;#x3001;&amp;#x30D3;&amp;#x30E5;&amp;#x30FC;&amp;#x3001;&amp;#x30B3;&amp;#x30F3;&amp;#x30C8;&amp;#x30ED;&amp;#x30FC;&amp;#x30E9;&amp;#x3068;&amp;#x3044;&amp;#x3046;3&amp;#x3064;&amp;#x306E;&amp;#x8981;&amp;#x7D20;&amp;#x306B;&amp;#x5206;&amp;#x5272;&amp;#x3059;&amp;#x308B;&amp;#x8003;&amp;#x3048;&amp;#x65B9;&amp;#x3067;&amp;#x3059;&amp;#x3002;
  6. FMCakeMix&amp;#x306E;&amp;#x304A;&amp;#x304B;&amp;#x3052;&amp;#x3067;&amp;#x3001;CakePHP&amp;#x306E;&amp;#x30E2;&amp;#x30C7;&amp;#x30EB;&amp;#x304C;&amp;#x5229;&amp;#x7528;&amp;#x3067;&amp;#x304D;&amp;#x308B;&amp;#x3088;&amp;#x3046;&amp;#x306B;&amp;#x306A;&amp;#x308A;&amp;#x307E;&amp;#x3059;&amp;#x3002; CakePHP&amp;#x306E;&amp;#x30E2;&amp;#x30C7;&amp;#x30EB;&amp;#x3067;&amp;#x306F;&amp;#x3001;ActiveRecord&amp;#x30D1;&amp;#x30BF;&amp;#x30FC;&amp;#x30F3;&amp;#x306E;O/R&amp;#x30DE;&amp;#x30C3;&amp;#x30D1;&amp;#x30FC;&amp;#x3001;&amp;#x30A2;&amp;#x30BD;&amp;#x30B7;&amp;#x30A8;&amp;#x30FC;&amp;#x30B7;&amp;#x30E7;&amp;#x30F3;&amp;#x3001;&amp;#x30C7;&amp;#x30FC;&amp;#x30BF;&amp;#x30D0;&amp;#x30EA;&amp;#x30C7;&amp;#x30FC;&amp;#x30B7;&amp;#x30E7;&amp;#x30F3;&amp;#x306A;&amp;#x3069;&amp;#x3082;&amp;#x6A5F;&amp;#x80FD;&amp;#x3092;&amp;#x5229;&amp;#x7528;&amp;#x3067;&amp;#x304D;&amp;#x3001;&amp;#x9762;&amp;#x5012;&amp;#x306A;&amp;#x30C7;&amp;#x30FC;&amp;#x30BF;&amp;#x30D9;&amp;#x30FC;&amp;#x30B9;&amp;#x51E6;&amp;#x7406;&amp;#x306E;&amp;#x8A18;&amp;#x8FF0;&amp;#x304C;&amp;#x30B7;&amp;#x30F3;&amp;#x30D7;&amp;#x30EB;&amp;#x306B;&amp;#x306A;&amp;#x308A;&amp;#x307E;&amp;#x3059;&amp;#x3002;&amp;#x307E;&amp;#x305F;&amp;#x30C7;&amp;#x30FC;&amp;#x30BF;&amp;#x30D9;&amp;#x30FC;&amp;#x30B9;&amp;#x304C;&amp;#x62BD;&amp;#x8C61;&amp;#x5316;&amp;#x3055;&amp;#x308C;&amp;#x3001;DBMS&amp;#x3092;&amp;#x5909;&amp;#x66F4;&amp;#x3057;&amp;#x3066;&amp;#x3082;&amp;#x8A2D;&amp;#x5B9A;&amp;#x3092;&amp;#x5909;&amp;#x66F4;&amp;#x3059;&amp;#x308B;&amp;#x3060;&amp;#x3051;&amp;#x3067;&amp;#x79FB;&amp;#x884C;&amp;#x3067;&amp;#x304D;&amp;#x307E;&amp;#x3059;&amp;#x3002; &amp;#x307E;&amp;#x3055;&amp;#x306B;&amp;#x3001;&amp;#x3042;&amp;#x308A;&amp;#x304C;&amp;#x3068;&amp;#x3046;&amp;#xFF01;FMCakeMix&amp;#x3068;&amp;#x3044;&amp;#x3046;&amp;#x611F;&amp;#x3058;&amp;#x3067;&amp;#x3059;&amp;#x3002;
  7. &amp;#x30A4;&amp;#x30F3;&amp;#x30B9;&amp;#x30C8;&amp;#x30FC;&amp;#x30EB;&amp;#x65B9;&amp;#x6CD5;&amp;#x306F;&amp;#x96E3;&amp;#x3057;&amp;#x304F;&amp;#x3042;&amp;#x308A;&amp;#x307E;&amp;#x305B;&amp;#x3093;&amp;#x3002;FMCakeMix&amp;#x306E;User Guide&amp;#x3092;&amp;#x8AAD;&amp;#x3081;&amp;#x3070;&amp;#x7C21;&amp;#x5358;&amp;#x3067;&amp;#x3057;&amp;#x3087;&amp;#x3046;&amp;#x3002;
  8. &amp;#x30B5;&amp;#x30F3;&amp;#x30D7;&amp;#x30EB;&amp;#x306E;&amp;#x30C7;&amp;#x30FC;&amp;#x30BF;&amp;#x30D9;&amp;#x30FC;&amp;#x30B9;&amp;#x3092;&amp;#x4F5C;&amp;#x6210;&amp;#x3057;&amp;#x307E;&amp;#x3059;&amp;#x3002; &amp;#x7C21;&amp;#x5358;&amp;#x306A;&amp;#x69CB;&amp;#x9020;&amp;#x3067;&amp;#x3059;&amp;#x3002;&amp;#x30C6;&amp;#x30FC;&amp;#x30D6;&amp;#x30EB;1&amp;#x3064;&amp;#x3001;&amp;#x30D5;&amp;#x30A3;&amp;#x30FC;&amp;#x30EB;&amp;#x30C9;3&amp;#x3064;&amp;#x3067;&amp;#x3059;&amp;#x3002;
  9. CakePHP&amp;#x306E;&amp;#x30C7;&amp;#x30FC;&amp;#x30BF;&amp;#x30D9;&amp;#x30FC;&amp;#x30B9;&amp;#x8A2D;&amp;#x5B9A;&amp;#x30D5;&amp;#x30A1;&amp;#x30A4;&amp;#x30EB;&amp;#x3092;&amp;#x7DE8;&amp;#x96C6;&amp;#x3057;&amp;#x307E;&amp;#x3059;&amp;#x3002; driver&amp;#x306B;fmcakemix&amp;#x3068;&amp;#x3057;&amp;#x307E;&amp;#x3059;&amp;#x3002;&amp;#x307E;&amp;#x305F;&amp;#x3001;Fx.php&amp;#x540C;&amp;#x69D8;dataSourceType&amp;#x3082;&amp;#x6307;&amp;#x5B9A;&amp;#x3057;&amp;#x3066;&amp;#x304F;&amp;#x3060;&amp;#x3055;&amp;#x3044;&amp;#x3002;
  10. &amp;#x3067;&amp;#x306F;&amp;#x3001;CakePHP&amp;#x306E;&amp;#x5B9F;&amp;#x969B;&amp;#x306E;&amp;#x30B3;&amp;#x30FC;&amp;#x30C7;&amp;#x30A3;&amp;#x30F3;&amp;#x30B0;&amp;#x3067;&amp;#x3059;&amp;#x3002; &amp;#x307E;&amp;#x305A;&amp;#x306F;&amp;#x30E2;&amp;#x30C7;&amp;#x30EB;&amp;#x306E;&amp;#x8A18;&amp;#x8FF0;&amp;#x3092;&amp;#x3057;&amp;#x307E;&amp;#x3059;&amp;#x3002;&amp;#x592A;&amp;#x5B57;&amp;#x306F;&amp;#x30D5;&amp;#x30A1;&amp;#x30A4;&amp;#x30EB;&amp;#x306E;&amp;#x30D1;&amp;#x30B9;&amp;#x3092;&amp;#x8868;&amp;#x3057;&amp;#x3066;&amp;#x3044;&amp;#x307E;&amp;#x3059;&amp;#x3002; &amp;#x4ECA;&amp;#x56DE;&amp;#x306E;&amp;#x30B5;&amp;#x30F3;&amp;#x30D7;&amp;#x30EB;&amp;#x3067;&amp;#x306F;&amp;#x6700;&amp;#x4F4E;&amp;#x9650;&amp;#x306E;&amp;#x8A18;&amp;#x8FF0;&amp;#x3001;&amp;#x30C7;&amp;#x30FC;&amp;#x30BF;&amp;#x30D9;&amp;#x30FC;&amp;#x30B9;&amp;#x540D;&amp;#x3068;&amp;#x30EC;&amp;#x30A4;&amp;#x30A2;&amp;#x30A6;&amp;#x30C8;&amp;#x540D;&amp;#x306E;&amp;#x307F;&amp;#x3067;&amp;#x3059;&amp;#x3002;
  11. &amp;#x6B21;&amp;#x306B;&amp;#x30E2;&amp;#x30C7;&amp;#x30EB;&amp;#x306E;&amp;#x8A18;&amp;#x8FF0;&amp;#x3092;&amp;#x3057;&amp;#x307E;&amp;#x3059;&amp;#x3002;&amp;#x5148;&amp;#x307B;&amp;#x3069;&amp;#x540C;&amp;#x69D8;&amp;#x3001;&amp;#x592A;&amp;#x5B57;&amp;#x306F;&amp;#x30D5;&amp;#x30A1;&amp;#x30A4;&amp;#x30EB;&amp;#x306E;&amp;#x30D1;&amp;#x30B9;&amp;#x3067;&amp;#x3059;&amp;#x3002; 7&amp;#x884C;&amp;#x76EE;&amp;#x3067;users&amp;#x30C6;&amp;#x30FC;&amp;#x30D6;&amp;#x30EB;&amp;#x306E;&amp;#x5168;&amp;#x30EC;&amp;#x30B3;&amp;#x30FC;&amp;#x30C9;&amp;#x3092;&amp;#x53D6;&amp;#x5F97;&amp;#x3057;&amp;#x3066;&amp;#x3001;8&amp;#x884C;&amp;#x76EE;&amp;#x3067;&amp;#x30D3;&amp;#x30E5;&amp;#x30FC;&amp;#x306B;&amp;#x305D;&amp;#x308C;&amp;#x3092;&amp;#x6E21;&amp;#x3057;&amp;#x307E;&amp;#x3059;&amp;#x3002; 4&amp;#x884C;&amp;#x76EE;&amp;#x3067;&amp;#x30DA;&amp;#x30FC;&amp;#x30B8;&amp;#x30CD;&amp;#x30FC;&amp;#x30B7;&amp;#x30E7;&amp;#x30F3;&amp;#x306E;&amp;#x6307;&amp;#x5B9A;&amp;#x3092;&amp;#x3057;&amp;#x3066;&amp;#x304A;&amp;#x308A;&amp;#x3001;1&amp;#x30DA;&amp;#x30FC;&amp;#x30B8;&amp;#x306B;15&amp;#x4EF6;&amp;#x8868;&amp;#x793A;&amp;#x3059;&amp;#x308B;&amp;#x3088;&amp;#x3046;&amp;#x306B;&amp;#x3057;&amp;#x3066;&amp;#x3044;&amp;#x307E;&amp;#x3059;&amp;#x3002;
  12. &amp;#x6700;&amp;#x5F8C;&amp;#x306B;&amp;#x30D3;&amp;#x30E5;&amp;#x30FC;&amp;#x3092;&amp;#x8A18;&amp;#x8FF0;&amp;#x3057;&amp;#x307E;&amp;#x3059;&amp;#x3002; &lt;td&gt;&amp;#x306E;&amp;#x90E8;&amp;#x5206;&amp;#x3067;&amp;#x306F;&amp;#x3001;&amp;#x6E21;&amp;#x3055;&amp;#x308C;&amp;#x305F;&amp;#x30C7;&amp;#x30FC;&amp;#x30BF;&amp;#x3092;&amp;#x7E70;&amp;#x308A;&amp;#x8FD4;&amp;#x3057;&amp;#x3066;&amp;#x8868;&amp;#x793A;&amp;#x3057;&amp;#x3066;&amp;#x3044;&amp;#x307E;&amp;#x3059;&amp;#x3002; &amp;#x4E0A;&amp;#x306E;&lt;th&gt;&amp;#x3067;&amp;#x306F;&amp;#x3001;&amp;#x30D5;&amp;#x30A3;&amp;#x30FC;&amp;#x30EB;&amp;#x30C9;&amp;#x540D;&amp;#x306E;&amp;#x898B;&amp;#x51FA;&amp;#x3057;&amp;#x3067;&amp;#x3042;&amp;#x308A;&amp;#x3001;&amp;#x30BD;&amp;#x30FC;&amp;#x30C8;&amp;#x30DC;&amp;#x30BF;&amp;#x30F3;&amp;#x306B;&amp;#x306A;&amp;#x3063;&amp;#x3066;&amp;#x3044;&amp;#x307E;&amp;#x3059;&amp;#x3002; &amp;#x6700;&amp;#x5F8C;&amp;#x306E;&amp;#x884C;&amp;#x306F;&amp;#x3001;&amp;#x30DA;&amp;#x30FC;&amp;#x30B8;&amp;#x756A;&amp;#x53F7;&amp;#x306E;&amp;#x30EA;&amp;#x30F3;&amp;#x30AF;&amp;#x30DC;&amp;#x30BF;&amp;#x30F3;&amp;#x3092;&amp;#x8868;&amp;#x793A;&amp;#x3055;&amp;#x305B;&amp;#x3066;&amp;#x3044;&amp;#x307E;&amp;#x3059;&amp;#x3002;
  13. &amp;#x3067;&amp;#x306F;&amp;#x5B9F;&amp;#x969B;&amp;#x306B;&amp;#x898B;&amp;#x3066;&amp;#x307F;&amp;#x307E;&amp;#x3057;&amp;#x3087;&amp;#x3046;&amp;#x3002;