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

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

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

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

解決済

2回答

5150閲覧

phpエラー内容について

pocarisweat

総合スコア16

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

0クリップ

投稿2017/07/28 18:19

Cakephpでこちらのサイトを使って進めています
http://tetra-themes.com/cakephp-howto-add-11/
記事を追加するというところでエラーが出てしまいました。
viewを作成後に指示通りのコードをMemosControllerに記述。
ここでエラーが出てしましました。
“エラー内容”

Fatal Error
Error: syntax error, unexpected 'public' (T_PUBLIC) 
File: /Applications/MAMP/htdocs/cakephp-2.2.0/app/Controller/MemosController.php 
Line: 10

MemosController.phpのコードです↓

<?php class MemosController extends AppController{ public function index(){ //set('送信する変数名',$this->Model名->find('条件')); $this->set('Memo',$this->Memo->find('all')); } } public function add() { if($this->request->is('post')) //postでリクエストが来た場合 { if($this->Memo->save($this->request->data)) //データベースに保存 { $this->Session->setFlash('入力完了'); //成功したら入力完了と表示 $this->redirect(array('action'=>'index')); //続けてindexページを表示 } else { $this->Session->setFlash('入力失敗'); //失敗したら入力失敗と表示 } } } ?>

特にページと間違った部分が見当たらないので一体どこが悪いのかわかりません。。。

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

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

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

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

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

guest

回答2

0

ベストアンサー

{}をよく見られると間違いがわかります。

classにadd()が入ってないですね。

【追記】

PHP

1class MemoController extends AppController { 2  public function index() { 3 4  } 5 6  public function add() { 7 8  } 9}

class {}の中にメソッドなりいろんなことを書いていくのに、今回は、class {}の外にpublic function add()が出てしまっていました。
当然classじゃないfunctionはありますが、その場合はpublicは不要になります。

いろいろ、閉じ括弧の位置など確認しつつ、書くようにされたら良いと思います。
もしかしたら面倒でも、classやfunctionを書いたときには一旦{}など閉じるとこまで書いておき、「その中」に処理を書くという感じで考えると楽かもしれません。

投稿2017/07/28 20:04

編集2017/07/31 00:36
Z-TALBO

総合スコア525

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

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

pocarisweat

2017/07/29 07:17

コードにするとどういったのが正解なのでしょうか?
guest

0

public function add(){}class MemosController extends AppController{} に入っていないからでは?

投稿2017/07/28 18:24

kei344

総合スコア69364

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

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

pocarisweat

2017/07/29 07:19

まだ始めたばかり正しいコードとか分かったりしますか?
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問