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

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

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

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

Twig

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

EC-CUBE

EC-CUBEは、主に日本国内で開発されているECコンテンツ管理システムです。ロックオン社のECKitを元にしてオープンソース化され、商品管理・受注管理・顧客管理・売上集計などECに特化した様々な機能を備えています。

Q&A

1回答

4934閲覧

twig内でPOSTされた値を受け取りたい

tukkk30

総合スコア7

PHP

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

Twig

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

EC-CUBE

EC-CUBEは、主に日本国内で開発されているECコンテンツ管理システムです。ロックオン社のECKitを元にしてオープンソース化され、商品管理・受注管理・顧客管理・売上集計などECに特化した様々な機能を備えています。

0グッド

0クリップ

投稿2017/10/24 06:47

###前提・実現したいこと
twigのテンプレート内でPOSTされた値を受け取りたい
twigでの正しいif文の書き方を知りたい

###発生している問題・エラーメッセージ
Twig_Error_Runtime in Template.php line 487:
Variable "key" does not exist in "__string_template__cd479f2b985b0703231ad7ab88b90f783629a6be694242a6d1824735833fa07e" at line 58.

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

twig

1{% block main %} 2 3{% if mmb %} 4 5<div class="result_wrap"> 6 <div class="top_ttl"> 7 <!-- 非会員用 --> 8 <h2><span>{{ key }}」の関連商品一覧</span></h2> // エラー箇所 9 <p>合計: {{ cnt }}</p> 10 </div> 11 <div class="result clearfix"> 12 <table class="keywd_li"> 13 <tbody> 14 <tr> 15 <th>商品</th> 16 <th></th> 17 </tr> 18 {% for item in products %} 19 <tr> 20 <td>{{ item }}</td> 21 <td> 22 <form method="POST" id="searchform" action="{{url('detail')}}"> 23 <input type="search" id="name" name="item" maxlength="20" value="{{ item }}" class="form-control"> 24 <button type="submit" id="srch_btn">詳しく見る</button> 25 </form> 26 </td> 27 </tr> 28 {% endfor %} 29 </tbody> 30 </table> 31 </div> 32</div> 33 34{% else %} 35 36<div class="result_wrap"> 37 <div class="top_ttl"> 38 <!-- 会員用 --> 39 <h2><span>{{ key }}」の関連商品一覧</span></h2> 40 <p>合計: {{ cnt }}</p> 41 </div> 42 <div class="result clearfix"> 43 <table class="keywd_li"> 44 <tbody> 45 <tr> 46 <th>商品</th> 47 <th></th> 48 </tr> 49 {% for item in products %} 50 <tr> 51 <td>{{ item }}</td> 52 <td> 53 <form method="POST" id="searchform" action="{{url('detail')}}"> 54 <input type="search" id="name" name="item" maxlength="20" value="{{ item }}" class="form-control"> 55 <button type="submit" id="srch_btn">詳しく見る</button> 56 </form> 57 </td> 58 </tr> 59 {% endfor %} 60 </tbody> 61 </table> 62 </div> 63</div> 64 65{% endif %} 66 67{% endblock %}

###試したこと
このページにkeyというnameがPOSTされたらforeachで表示されるようにしていたのですが、if文で分岐を書いた途端にkeyが受け取れなくなっていました。if文での分岐を削除すると上手く動きます。

###補足情報(言語/FW/ツール等のバージョンなど)
ec-cube3.0.15を利用しております。twigは初めて利用するので色々と見辛く、間違ったコードが多々あるかもしれませんが、何卒よろしくお願い致します。

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

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

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

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

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

xenbeat

2017/10/24 08:45

先に進んでまた違うエラーが出たなら(状況が変わったなら)、前回の質問をクローズしてから質問しましょうよ。https://teratail.com/questions/96022
tukkk30

2017/10/24 09:18

chikumin様 ありがとうございます。以前の質問は私なりにまだ試行錯誤しておりましたので、クローズせずそのままにしておりました。とはいえ、ご回答くださった方に一言お返事するべきだったと思います。大変失礼いたしました。
tukkk30

2017/10/24 09:22 編集

以前の質問と同じようなタイトルと質問内容であることに、ご指摘いただいて気づきました。前回のものと今回の質問は別のものでしたので、新たに質問をしてしまいました。
guest

回答1

0

Variable "key" does not exist

変数keyが無いと言われているのだから、実際無いかスコープ?が違うのでしょう。
たぶんtwigに変数を渡しているプログラム側の問題ですね。

投稿2017/10/27 02:45

ooeok

総合スコア469

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問