{"id":4774,"date":"2013-04-30T16:14:37","date_gmt":"2013-04-29T22:14:37","guid":{"rendered":"http:\/\/www.moonmile.net\/blog\/?p=4774"},"modified":"2013-04-30T16:16:11","modified_gmt":"2013-04-30T07:16:11","slug":"cakephp-%e6%96%b0%e3%81%97%e3%81%84%e8%a1%8c%e3%82%92%e6%8c%bf%e5%85%a5%e3%81%99%e3%82%8b","status":"publish","type":"post","link":"http:\/\/www.moonmile.net\/blog\/archives\/4774","title":{"rendered":"[CakePHP] \u65b0\u3057\u3044\u884c\u3092\u633f\u5165\u3059\u308b"},"content":{"rendered":"<p>\nINSERT \u3092\u4f7f\u3063\u3066\u65b0\u3057\u3044\u884c\u3092\u8ffd\u52a0\u3059\u308b\u3002<br \/>\n\u5b9f\u969b\u306b\u306f\u3001\u65b0\u3057\u3044ID\u3092\u4f5c\u6210\u3059\u308b\u3001\u65b0\u3057\u3044\u884c\u3092\u8ffd\u52a0\u3059\u308b\u3001\uff12\u624b\u9806\u306b\u306a\u308b\u3002\u306a\u306e\u3067\u3001\u6b63\u78ba\u306b\u4f5c\u308b\u306a\u3089\u3070\u65b0\u3057\u3044ID\u3092\u4f5c\u308a\u306a\u304c\u3089 insert \u3092\u3057\u305f\u5f8c\u306b update \u3092\u3057\u306a\u3044\u3068\u3044\u3051\u306a\u3044\uff08\u7af6\u5408\u304c\u767a\u751f\u3059\u308b\u305f\u3081\uff09\u306e\u3060\u304c\u3001\u307e\u3042\u3001\u3072\u3068\u307e\u305a\u4f5c\u3063\u3066\u307f\u308b\u3068\u3044\u3046\u3053\u3068\u3067\u3002\n<\/p>\n<p>\n\u25a0\u30c6\u30fc\u30d6\u30eb\u69cb\u9020\n<\/p>\n<pre class=\"brush: csharp; title: ; notranslate\" title=\"\">\r\nCREATE TABLE `test` (\r\n  `ID` int NOT NULL,\r\n  `Name` varchar(100) NOT NULL,\r\n  `Age` int DEFAULT NULL,\r\n  `UpdateDate` datetime NOT NULL\r\n);\r\n<\/pre>\n<p>\nID \u306f auto_incriment \u3092\u4f7f\u3063\u3066\u3082\u3044\u3044\u306e\u3060\u304c\u3001\u3053\u3053\u306f\u305d\u306e\u307e\u307e int \u3067\u3002<br \/>\n\u30c7\u30fc\u30bf\u540c\u671f\u304c\u767a\u751f\u3059\u308b&#8230;\u3063\u3066\u306e\u3092\u8003\u616e\u3057\u3066\u3001UpdateDate \u306e\u5217\u3092\u4f5c\u3063\u3066\u304a\u304f\u3002\n<\/p>\n<p>\n\u25a0Model\n<\/p>\n<p>\n\u65b0\u3057\u3044 ID \u3092\u4f5c\u308b\u305f\u3081\u306e GetNewId \u30e1\u30bd\u30c3\u30c9\u3060\u3051\u4f5c\u3063\u3066\u304a\u304f\u3002<\/p>\n<pre class=\"brush: php; title: ; notranslate\" title=\"\">\r\nclass Test extends AppModel\r\n{\r\n\tvar $useTable = 'Test';\r\n\tfunction GetNewId() {\r\n\t\t$sql = \t&quot;SELECT max(id)+1 as ID FROM Test&quot;;\r\n\t\t$ret = $this-&gt;query($sql);\r\n\t\treturn $ret&#x5B;0]&#x5B;0]&#x5B;'ID'];\r\n\t}\r\n}\r\n<\/pre>\n<\/p>\n<p>\n\u305d\u3046\u3044\u3048\u3070\u3001\u884c\u6570\u3067\u82e6\u52b4\u3057\u3066\u3044\u308b\u4eba\u3082\u3044\u308b\u307f\u305f\u3044\u306a\u306e\u3060\u304c\u3001$this-&gt;query \u3092\u3057\u305f\u5f8c\u306b RowCount \u3059\u308b\u3068\u9045\u304f\u306a\u308b\uff08\u7121\u99c4\u306a\u884c\u3092\u691c\u7d22\u3059\u308b\uff09\u306e\u3067\u3001SQL \u306e COUNT \u95a2\u6570\u3092\u4f7f\u3046\u3002\n<\/p>\n<pre class=\"brush: php; title: ; notranslate\" title=\"\">\r\n\tfunction GetCount() {\r\n\t\t$sql = \t&amp;quot;SELECT count(id) as CNT FROM Test&amp;quot;;\r\n\t\t$ret = $this-&gt;query($sql);\r\n\t\treturn $ret&#x5B;0]&#x5B;0]&#x5B;&#039;CNT&#039;];\r\n\t}\r\n<\/pre>\n<p>\n\u306a\u611f\u3058\u306b\u3059\u308c\u3070 OK\u3002\u9069\u5b9c\u3001WHERE \u53e5\u3092\u4ed8\u3051\u52a0\u3048\u308b\u3053\u3068\u306b\u306a\u308b\u304c&#8230;\u3053\u308c\u306f\u307e\u305f\u5225\u9014\u8003\u3048\u308b\u3002\n<\/p>\n<p>\n\u25a0Controller\n<\/p>\n<p>\n\u78ba\u8a8d\u7528\u306b index \u30e1\u30bd\u30c3\u30c9\u3067\u691c\u7d22\u3067\u304d\u308b\u3088\u3046\u306b\u3057\u3066\u304a\u304f\u3002<br \/>\ninsert \u30e1\u30bd\u30c3\u30c9\u304c\u633f\u5165\u90e8\u5206\u3002\n<\/p>\n<p>\nin Controller\/TestController.php<\/p>\n<pre class=\"brush: php; title: ; notranslate\" title=\"\">\r\nclass TestController extends AppController {\r\n\tpublic function index() {\r\n\t\t$id = null;\r\n\t\tif (isset($this-&gt;params&#x5B;&#039;url&#039;]&#x5B;&#039;id&#039;])) $id = $this-&gt;params&#x5B;&#039;url&#039;]&#x5B;&#039;id&#039;];\r\n\r\n\t\tif ( $id != null ) {\r\n\t\t\t$this-&gt;set(&#039;Test&#039;,$this-&gt;Test-&gt;findAllById($id));\r\n\t\t} else {\r\n\t\t\t$this-&gt;set(&#039;Test&#039;,$this-&gt;Test-&gt;find(&#039;all&#039;));\r\n\t\t}\r\n\t}\r\n\tpublic function insert() {\r\n\t\t$id = $this-&gt;Test-&gt;GetNewId();\r\n\t\t$this-&gt;set(&#039;ID&#039;,  $id );\r\n\t\t$data = array( \r\n\t\t\t&#039;ID&#039; =&gt; $id,\r\n\t\t\t&#039;Name&#039; =&gt; &#039;tomoaki&#039;,\r\n\t\t\t&#039;Age&#039;  =&gt; 20,\r\n\t\t\t&#039;UpdateDate&#039; =&gt; date(&#039;c&#039;));\r\n\t\t\t\r\n\t\t\/\/ $this-&gt;Test-&gt;create();\r\n\t\t$this-&gt;Test-&gt;save( $data );\r\n\t\t$this-&gt;set(&#039;Test&#039;,$this-&gt;Test-&gt;find(&#039;all&#039;));\r\n\t\t\/\/ $this-&gt;redirect(&#039;.&#039;);\r\n\t}\r\n}\r\n<\/pre>\n<\/p>\n<p>\nID \u3092 $this-&gt;set \u3057\u3066\u3044\u308b\u306e\u306f\u78ba\u8a8d\u306e\u305f\u3081\u3002<br \/>\n\u65b0\u3057\u3044\u884c\u3092\u3001$data = array \u3067\u4f5c\u6210\u3057\u3066\u3001save \u306e\u9806\u3067\u547c\u3073\u51fa\u3057\u3002ID \u3092\u81ea\u5206\u3067\u4f5c\u6210\u3057\u3066\u3044\u308b\u306e\u3067 create \u306f\u547c\u3073\u51fa\u3059\u5fc5\u8981\u306f\u306a\u3044\u304b\u3082&#8230;\u5f8c\u3067\u8abf\u3079\u308b\u3002\n<\/p>\n<p>\n$data \u306e\u4e2d\u8eab\u306f\u3001\u672c\u6765\u306f\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u304b\u3089 Web API \u3067\u9001\u308b\u30d1\u30bf\u30fc\u30f3\u3002\u7c21\u5358\u306a\u6587\u5b57\u5217\u306a\u3089\u3070 URL \u3067\u3088\u3044\u306e\u3060\u304c\u3001\u3053\u3053\u306f POST \u306b\u7d71\u4e00\u3057\u3066\u304a\u304f\u306e\u304c\u4fbf\u5229\u3060\u3068\u601d\u3046\u3002<br \/>\n\u65e5\u4ed8\u306f\u30b5\u30fc\u30d0\u30fc\u65e5\u6642\u3067\u7d71\u4e00\u3059\u308b\u305f\u3081\u306b\u3001PHP \u5074\u3067\u751f\u6210\u3002date(&#8216;c&#8217;) \u3059\u308c\u3070 ok\u3002\n<\/p>\n<p>\n\u633f\u5165\u5f8c\u306b index \u3078\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u3057\u3066\u3082\u3088\u3044\u306e\u3060\u304c\u3001\u3053\u3053\u3067\u306f\u78ba\u8a8d\u306e\u305f\u3081\u306b insert \u3092\u305d\u306e\u307e\u307e\u8868\u793a\u3002\n<\/p>\n<p>\n\u25a0View\n<\/p>\n<pre class=\"brush: php; title: ; notranslate\" title=\"\">\r\n&lt;h2&gt;Test list&lt;\/h2&gt;\r\n&lt;?php \r\n\techo &amp;quot;new id: $ID &lt;br \/&gt;&amp;quot;;\r\n?&gt;\r\n\r\n&lt;table&gt;\r\n\t&lt;tr&gt;\r\n\t\t&lt;td&gt;ID&lt;\/td&gt;\r\n\t\t&lt;td&gt;Name&lt;\/td&gt;\r\n\t\t&lt;td&gt;Age&lt;\/td&gt;\r\n\t\t&lt;td&gt;UpdateDate&lt;\/td&gt;\r\n\t&lt;\/tr&gt;\r\n\r\n&lt;?php foreach($Test as $item) : ?&gt;\r\n\t&lt;tr&gt;\r\n\t\t&lt;td&gt;&lt;?php echo $item&#x5B;&#039;Test&#039;]&#x5B;&#039;ID&#039;] ?&gt;&lt;\/td&gt;\r\n\t\t&lt;td&gt;&lt;?php echo $item&#x5B;&#039;Test&#039;]&#x5B;&#039;Name&#039;] ?&gt;&lt;\/td&gt;\r\n\t\t&lt;td&gt;&lt;?php echo $item&#x5B;&#039;Test&#039;]&#x5B;&#039;Age&#039;] ?&gt;&lt;\/td&gt;\r\n\t\t&lt;td&gt;&lt;?php echo $item&#x5B;&#039;Test&#039;]&#x5B;&#039;UpdateDate&#039;] ?&gt;&lt;\/td&gt;\r\n\t&lt;\/tr&gt;\r\n&lt;?php endforeach ; ?&gt;\r\n<\/pre>\n<p>\n\u25a0\u7d50\u679c\n<\/p>\n<p>\n\u633f\u5165\u3057\u305f\u884c\u304c\u8868\u793a\u3055\u308c\u308b\u3002\n<\/p>\n<p><a href='http:\/\/www.moonmile.net\/blog\/wp-content\/uploads\/2013\/04\/wpid-dworkblogimage20130430_05org.jpg'><img border='0' src='http:\/\/www.moonmile.net\/blog\/wp-content\/uploads\/2013\/04\/wpid-dworkblogimage20130430_05thum.jpg'\/><\/a><\/p>\n<p>\n\u203b\u3053\u306e\u7d50\u679c\u306f GMT \u304c\u9593\u9055\u3063\u3066\u3044\u308b\u306e\u3067\u3001\u5f8c\u3067\u76f4\u3059\u3002<\/p>\n","protected":false},"excerpt":{"rendered":"<p>INSERT \u3092\u4f7f\u3063\u3066\u65b0\u3057\u3044\u884c\u3092\u8ffd\u52a0\u3059\u308b\u3002 \u5b9f\u969b\u306b\u306f\u3001\u65b0\u3057\u3044ID\u3092\u4f5c\u6210\u3059\u308b\u3001\u65b0\u3057\u3044\u884c\u3092\u8ffd\u52a0\u3059\u308b\u3001\uff12\u624b\u9806\u306b\u306a\u308b\u3002\u306a\u306e\u3067\u3001\u6b63\u78ba\u306b\u4f5c\u308b\u306a\u3089\u3070\u65b0\u3057\u3044ID\u3092\u4f5c\u308a\u306a\u304c\u3089 insert \u3092\u3057\u305f\u5f8c\u306b update \u3092\u3057\u306a\u3044\u3068\u3044\u3051\u306a\u3044\uff08\u7af6 &hellip; <a href=\"http:\/\/www.moonmile.net\/blog\/archives\/4774\">\u7d9a\u304d\u3092\u8aad\u3080 <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[20],"tags":[],"class_list":["post-4774","post","type-post","status-publish","format-standard","hentry","category-cakephp"],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"http:\/\/www.moonmile.net\/blog\/wp-json\/wp\/v2\/posts\/4774","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.moonmile.net\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.moonmile.net\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.moonmile.net\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"http:\/\/www.moonmile.net\/blog\/wp-json\/wp\/v2\/comments?post=4774"}],"version-history":[{"count":1,"href":"http:\/\/www.moonmile.net\/blog\/wp-json\/wp\/v2\/posts\/4774\/revisions"}],"predecessor-version":[{"id":4775,"href":"http:\/\/www.moonmile.net\/blog\/wp-json\/wp\/v2\/posts\/4774\/revisions\/4775"}],"wp:attachment":[{"href":"http:\/\/www.moonmile.net\/blog\/wp-json\/wp\/v2\/media?parent=4774"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.moonmile.net\/blog\/wp-json\/wp\/v2\/categories?post=4774"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.moonmile.net\/blog\/wp-json\/wp\/v2\/tags?post=4774"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}