質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Zend Framework

Zend Frameworkは、PHP5で記述されたWebアプリケーションフレームワークです。Zend Frameworkには守らなければならない開発の規定というものは存在せず、MVCなどの複数のコンポーネントを提供しています。

Q&A

解決済

1回答

9156閲覧

Zend Frameworkでエラーが出ていますが、解決できません。すみませんが、よろしくお願いします

na_iki

総合スコア15

Zend Framework

Zend Frameworkは、PHP5で記述されたWebアプリケーションフレームワークです。Zend Frameworkには守らなければならない開発の規定というものは存在せず、MVCなどの複数のコンポーネントを提供しています。

0グッド

0クリップ

投稿2016/10/15 11:39

###前提・実現したいこと
はじめて質問します。よろしくお願いします。
仕事でZend FrameWorkを使うことになったので勉強をしていますが、
初歩的な段階でエラーが出てよく分かりません。

###発生している問題・エラーメッセージ

( ! ) Fatal error: Uncaught exception 'Zend_Controller_Dispatcher_Exception' with message 'Invalid controller specified (error)' in C:\xampp\ZendFramework\library\Zend\Controller\Dispatcher\Standard.php on line 249 ( ! ) Zend_Controller_Dispatcher_Exception: Invalid controller specified (error) in C:\xampp\ZendFramework\library\Zend\Controller\Dispatcher\Standard.php on line 249 Call Stack # Time Memory Function Location 1 0.0156 135496 {main}( ) ..\index.php:0 2 2.0882 641248 Zend_Controller_Front->dispatch( ???, ??? ) ..\index.php:9

###該当のソースコード

RequestController.php <?php require_once 'Zend/Controller/Action.php'; //requestコントローラを定義 class RequestController extends Zend_Controller_Action{ //indexアクションを定義(特別な処理はなし) public function indexAction(){ } //postアクションを定義([送信]ボタンクリック時に呼び出し) public function postAction(){ //ポストデータnameからあいさつメッセージを生成 $req = $this->getRequest(); $this->view->result = 'こんにちは、'.$req->getPost('name').'さん♪'; } }
index.phtml <html> <head> <title>リクエストオブジェクト</title> </head> <body> //request、postアクションにポストデータを送信 <form method = "post" action = "post.phtml"> 名前: <input type ="text" name = "name" size = "10" /> <input type ="submit" value = "送信" /> </form> </body> </html>
post.phtml <html> <head> <title>リクエストオブジェクト</title> </head> <body> //ビュー変数resultの内容を出力 <?php print($this->escape($this->result));?> </body> </html>

###試したこと
課題に対してアプローチしたことを記載してください

フォルダ構成

application
◇controllers
◇config
◇models
◇views
◇◇scripts
◇◇◇index
◇◇◇◇index.phtml
◇◇◇request
◇◇◇◇index.phtml
◇◇◇◇post.phtml

public(ドキュメントルート)
◇.htaccess
◇index.php

###補足情報(言語/FW/ツール等のバージョンなど)
PHP 5.6
Zend Framework 1.5.3

書き方がなってないかもしれませんが、何卒よろしくお願いします。
(◇はスペースです)

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

ZendFramework は例外が発生すると ErrorController の errorAction に処理を渡します。そのErrorController が実装されていないのでディスパッチエラーが出ているという二重のエラーですね。
まず ErrorController で実際のエラー内容を把握できるようにして、それから元のエラーへの対応をして下さい。

蛇足ですが質問タイトルはなるべく具体的に問題を表現すべきで、「解決できません」「すみませんがよろしくお願いします」などを含めるのは適当でないと思います。

投稿2016/10/15 11:55

編集2016/10/15 12:00
timy

総合スコア168

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

na_iki

2016/10/15 13:00

ご回答ありがとうございました。早速ErrorControllerを実装して調べたところ、index.phtmlのアクションをpost.phtml→postにすれば直りました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問