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

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

ただいまの
回答率

90.76%

  • PHP

    19257questions

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

書籍を模写したところ、どこが間違っているのかがわからない

受付中

回答 3

投稿

  • 評価
  • クリップ 0
  • VIEW 247

zzz00

score 2

 前提・実現したいこと

ここに質問の内容を詳しく書いてください。
(例)PHP(CakePHP)で●●なシステムを作っています。
■■な機能を実装中に以下のエラーメッセージが発生しました。

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

エラーメッセージ
Parse error: syntax error, unexpected '$mail_sub' (T_VARIABLE), expecting ',' or ';' in C:\xampp\htdocs\phpkiso\thanks.php on line 26

 該当のソースコード

phpここに言語名を入力
ソースコード
$mail_sub= 'アンケートを受け付けまいた。';
$mail_body= $nickname."様へ\nアンケートご協力ありがとうございました。";
$mail_body=html_entity_decode($mail_body,ENT_QUOTES,"UTF-8");
$mail_head='From:xxx@xxx.co.jp';
mb_language('Japanese');
mb_internal_encoding("UTF-8");
mb_send_mail($email,$mail_sub,$mail_body,$mail_head);

 試したこと

書籍に乗っているコードを何度も見比べたが、間違っているところがわからない

 補足情報(FW/ツールのバージョンなど)

$mail_sub= 'アンケートを受け付けまいた。';
これがエラーの26行目
ここにより詳細な情報を記載してください。

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

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

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

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • asahina1979

    2018/04/19 01:25

    いきなりはじめる からつまずくんじゃないんでしょうか?

    キャンセル

  • arasi

    2018/04/19 09:15

    アンケートを受け付けまいたとか書いている時点で正しく模写できていないのだが

    キャンセル

  • mts10806

    2018/04/19 09:17

    arasiさん そうなんですよね。

    キャンセル

回答 3

+2

まずthanks.phpを掲載してください。

(たとえば ENT_QUOTESの値はたぶん'(シングル)か”(ダブル)だと推測できますが、)
ソースの一部の掲載だけでは、回答が制限されます。


解決策

エラー文からの推測で書きます。

「expecting ',' or ';'」とあるので、たぶんそのどちらかがコマンドの末尾にない、
これがエラーの原因でしょう。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

+2

その手のエラーはエラーで表示される行の前の行のケツに「;」がついていない
場合にでます。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

+1

単なる模写をするからです。
コードの目的とそれに向かうそれぞれの意味を理解することが解決と成長への早道です。

あなたが目指すのは「書籍と一字一句違わないコードを書くこと」でしょうか?

プログラムには必ず守らなければならない「お作法」があります。
その「お作法」は「書籍を模写」ではカバーできません。
PHPマニュアルをはじめとした公式のドキュメントをきちんと抑えること、
エラーメッセージがでたらそのエラーメッセージの意味を調べていくことで身に付きます。

どのような書籍か知りませんが、まず書こうとしているコードの目的とそれぞれの意味くらいは
理解してから書いていった方が良いです。
書籍の名称もないですし、名称を提示されてもその書籍を持っている人がどれくらいいるかは分かりません。
つまり、「その書籍と一字一句違わないという確認は見ている人が誰にもできない」わけです。
提示されたコードはあくまで質問者さんが書かれたコードとして理解されます。
模写であってもコピペであっても責任はコードを書いた人自身が持つべきです。

追記:
お作法 と言えば、質問本文に質問テンプレート部分が多く見られますし
ソースコードがきちんとコードブロックで囲われていません。
質問と関係ない部分はノイズとなって回答する側の弊害となりえますし、
コードは再現確認のために必要なものなのできちんとコードブロックで囲う必要があります。
質問編集画面ではプレビューがリアルタイムで表示されますのでそちらを確認しながら調整してください。
(守らない質問者さんが多いですが、必要な情報をきちんと詰め込むこと、コードを見やすく・再現可能な状態とすること はサイトを利用する上での最も守るべきお作法です)

投稿

編集

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2018/04/19 08:19

    まあこの書籍は「いきなりはじめる PHP」だったら

    誤:$dbh->query('SET NAMES UTF-8');
    正:$dbh->query('SET NAMES utf8');

    誤:dbh = null;
    正:$dbh = null;

    とある動作させてないコードがあるらしいからなぁ

    キャンセル

  • 2018/04/19 08:22

    私は「初心者が◎日で」とかいう触れ込みの書籍は信頼しないですね。
    高いには高いなりの理由があるので、パーフェクトPHP辺りを手に取ってもらいたいですね。

    キャンセル

  • 2018/04/19 08:42 編集

    まあ、リックテレコムのプロ写経師育成の本らしいからなあ→
    いきなりのはずなのに説明は二冊目(別の書籍を参考な記述があるらしい)の本

    キャンセル

  • 2018/04/19 09:06

    目次だけ見たら結構テンション高めで初学者は惹かれるかもしれませんね。
    「ワクワク・ドキドキ」が必要な表現かどうかは置いといて・・・

    キャンセル

  • 2018/04/19 09:09

    今更asahina1979さんの質問への追記・修正依頼のコメントとの連動性に気づきました。上手いですね・・・w

    キャンセル

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

  • ただいまの回答率 90.76%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る

  • PHP

    19257questions

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