質問編集履歴

2 文法の修正

kaori1994

kaori1994 score 26

2016/08/09 10:27  投稿

phpのテンプレート「Twig」の使い方について
phpのテンプレート「Twig」の使い方についてお聞きしたいです!
お世話になっております。kaoriと申します。
現在お問合せフォームをPHPとTwigを使って作成中なのですが詰まってしまいました。
【最終的にやりたいこと】
入力フォーム ⇒ バリデーションチェック等したいのでいったんPHPに値を渡す
⇒ 確認フォームで値が正常に渡されていることを確認
【現状詰まっていること】
入力フォームから渡されたPOSTの値を確認フォームにそのまま渡す事ができません。
以下、私がネットで調べて見よう見まねで書いたプログラムです。
form1.html.twib(入力フォーム)
form.php(入力フォームと確認フォームの仲介)
check.html.twig(確認フォーム)
```
<?php
// ユーティリティークラス(Twig)読み込み
require_once '../vendor/autoloader.php';
// 初期化
Twig_Autoloader::register();
//設定
$loader = new Twig_Loader_Filesystem(".");
$twig = new Twig_Environment($loader, array(
'cache' => './cache',
));
//テンプレートを使用
$template = $twig->loadTemplate("form1.html.twig");
//POSTで受け取った値を変数に代入
$name = $_POST['name'];
$phonetic =$_POST['phonetic'];
$mail=$_POST['mail'];
$company_school=$_POST['company_school'];
$telNo=$_POST['telNol'];
//配列(data)に格納
$data = array();
$data['name'] = "$name"
$data['phonetic'] = "$phonetic"
$data['mail'] = "$mail"
$data['company_school'] = "$company_school"
$data['telNo'] = "$telNo"
//確認フォームに配列(data)を渡してあげているつもり・・・
$template_file = 'check.html.tiwg'
echo $twig->render($template_file,$data);
```
以上が私が考えたプログラムです。
実行すると
Parse error: syntax error, unexpected 'echo' (T_ECHO)
というエラーが出てきてしまいます。(書き方が違うよというエラーらしいです)
色々検索してみたものの、Twigの情報があまりなくて詰まってしまいました。
申し訳ありませんが、どなたかご教示頂けたら幸いです。
よろしくお願いいたします。
  • PHP

    28094 questions

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

  • Twig

    89 questions

    Twig は、簡潔で可読性の高いテンプレートを記述することができ、 シンプルに記述することを目的として作られた PHPテンプレートエンジンです。

1 文法の修正

kaori1994

kaori1994 score 26

2016/08/09 10:25  投稿

phpのテンプレート「Twig」の使い方について
お世話になっております。kaoriと申します。
現在お問合せフォームをPHPとTwigを使って作成中なのですが詰まってしまいました。
【やりたいこと】
【最終的にやりたいこと】
入力フォーム ⇒ バリデーションチェック等したいのでいったんPHPに値を渡す
⇒ 確認フォームで値が正常に渡されていることを確認
【詰まっていること】
【現状詰まっていること】
入力フォームから渡されたPOSTの値を確認フォームにそのまま渡す事ができません。
以下、私がネットで調べて見よう見まねで書いたプログラムです。
form1.html.twib(入力フォーム)
form.php(入力フォームと確認フォームの仲介)
check.html.twig(確認フォーム)
```
<?php
// ユーティリティークラス(Twig)読み込み
require_once '../vendor/autoloader.php';
// 初期化
Twig_Autoloader::register();
//設定
$loader = new Twig_Loader_Filesystem(".");
$twig = new Twig_Environment($loader, array(
   'cache' => './cache',
));
//テンプレートを使用
$template = $twig->loadTemplate("form1.html.twig");
//POSTで受け取った値を変数に代入
$name = $_POST['name'];
$phonetic =$_POST['phonetic'];
$mail=$_POST['mail'];
$company_school=$_POST['company_school'];
$telNo=$_POST['telNol'];
//配列(data)に格納
$data = array();
$data['name'] = "$name"
$data['phonetic'] = "$phonetic"
$data['mail'] = "$mail"
$data['company_school'] = "$company_school"
$data['telNo'] = "$telNo"
//確認フォームに配列(data)を渡してあげているつもり・・・
$template_file = 'check.html.tiwg'
echo $twig->render($template_file,$data);
```
以上が私が考えたプログラムです。
実行すると
Parse error: syntax error, unexpected 'echo' (T_ECHO)
というエラーが出てきてしまいます。(書き方が違うよというエラーらしいです)
色々検索してみたものの、Twigの情報があまりなくて詰まってしまいました。
申し訳ありませんが、どなたかご教示頂けたら幸いです。
よろしくお願いいたします。
  • PHP

    28094 questions

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

  • Twig

    89 questions

    Twig は、簡潔で可読性の高いテンプレートを記述することができ、 シンプルに記述することを目的として作られた PHPテンプレートエンジンです。

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る