• 締切済み

symfony 画面が表示されない

こんにちは、 symfony入門したばかりのものですが、 http://codezine.jp/article/detail/704?p=4を 参考に、実際にサンプルを作っていたのですが 下記の部分を変更して(actions.class.phpなども変更) http://localhost/codezine/web/helloworldで いざ、WEB表示させてみると、「お名前をどうぞ」は表示されるのですが テキストボックスや、コマンドボタンが表示されません。 何か確認方法などはありますでしょうか。 indexSuccess.php---------------------------- <p>お名前をどうぞ。</p> <?php echo form_tag('helloworld/youkoso') ?> <?php echo input_tag('anatano_onamae', 'your name') ?> <?php echo submit_tag('Save') ?> </form>

みんなの回答

  • mickymac
  • ベストアンサー率37% (90/240)
回答No.1

symfonyのバージョンをcodezineと揃えていますか? 1.1だと、Formヘルパーをインクルード(?)しないとだめだったです。 1.1の情報は日本語だと少ない(というか初心者には敷居が高い)みたい です。書籍も1.0対応のものですし。レンダリング後のソース等、1.1の 方がきれいなので僕も1.1で勉強をしたいのですが、中々進みません。 勘違いであればスルーしてください。

関連するQ&A

  • symfonyでCSRFがうまく動かない

    色々調べているのですが、解決が出来ないので何か同じ事象が起こっている方、解決策の糸口をご教授頂けませんか。 現在、symfony1.4にてフォームを作成しています。 sfFormを継承したクラスでフォームを作成し、バリデーションを実装しました。 そうすると、他のバリデーションは特に問題なく作動しているのですが、 「 csrf token: 必須項目です。」 と、csfrの必須エラーとなってしまいます。 template側では <?php echo $form['_csrf_token']->render(); ?> <?php echo $form['_csrf_token']->renderRow(); ?> <?php echo $form->renderHiddenFields() ?> <?php echo $form ; ?> などで出力してみたのですが、いずれも下記のように <input type="hidden" name="club[_csrf_token]" id="club__csrf_token" /> value値に値が入らないのです。 これは、何が原因なのでしょうか? ご存知の方がいらっしゃいましたら、 ご教授頂けると助かります。 以上です。 宜しくお願い致します。

    • ベストアンサー
    • PHP
  • formヘルパーを使わないと、パラメータを取得できないのでしょうか?

    symfonyを使用してますが、 formヘルパーを使わないと、リクエストのパラメータを取得できないのでしょうか? --------------------------------------------------- <form action="/web/xx.php/xx/xxx" enctype="text/plain" method="post"> <input type="text" name="model" value="50"> <input type="submit" value="検索"> </form> --------------------------------------------------- 上記だと、パラメータを取得できるが、下記だと取得できる。 --------------------------------------------------- <?php echo form_tag('/web/xx.php/xx/xxx') ?> <?php echo input_tag("model","50") ?> <?php echo submit_tag('検索')?>

    • 締切済み
    • PHP
  • symfonyのインストールについて

    Windowsにxamppをインストールしています。 下記のサイトを参考にしながらPHPのフレームワーク(symfony)をインストールしましたがタグが出力されません。 http://codezine.jp/article/detail/704 xamppのコントロールでApacheを再起動して再度、ブラウザでページを表示すると下記のエラーページが表示されます。 「ページを表示できません  検索中のページには問題があるため表示できません。  HTTP 500 - 内部サーバー エラー  Internet Explorer 」 ブラウザで「http://localhost」を入力するとsymfonyのページが表示されます。 「Symfony Project Created  Congratulations! You have successfully created your symfony project.」 昨日からずっと考えていますが何がいけないのか正直わかりません。 申し訳ありませんがご教授お願いします。 宜しくお願いします。

    • ベストアンサー
    • PHP
  • kcaptchaで画像が表示されません。

    kcaptchaという画像認証を導入しようとしていますが 画像が表示されず(パスが通ってない×印がでる) 投稿させていただきます。 http://freecode.com/projects/kcaptcha 画像表示部分のソースはいかになります。 <form action="index.php" method="post"> <p>Enter text shown below:</p> <p><img src="./kcaptcha.php?<?php echo session_name()?>=<?php echo session_id()?>"></p> <p><input type="text" name="keystring"></p> <p><input type="submit" value="Check"></p> </form> このimg src="./kcaptcha.php?<?php echo session_name()?>=<?php echo session_id()?> がうまく言ってないと思うのですがどう修正したらよいかわからず 投稿させていただきました。 img src="./kcaptcha.php?←の部分はindex.phpなどいろいろ試しましたがだめでした。 何か自作のphpファイルなどを用意する必要があるのでしょうか? 以下環境になります。 サクラレンタルサーバ スタンダードプラン session.save_path /home/user/tmp /home/user/tmp session.use_cookies On On session.use_only_cookies On On session.use_trans_sid 1 1 tmpフォルダにはsessionデータらしきファイルが保存されています。 提示不足の情報などありましたらできる限り 対応したいと思います。 よろしくお願いします。

    • ベストアンサー
    • PHP
  • PHPでjavascriptを表示する方法

    すみません。javascriptの事はほとんど分からないのですが、 phpを使ってjavascriptを表示したいのですが基本的な部分で分かりません。 例えば <?php echo"<script>document.write(\"PHP!\")</script>;" ?> は簡単にできますが、タグに入っているjavascriptはどうやってphpで表示させるのでしょうか? <form name="aaa" method="post" action="bbb.php"> <select name="ccc" onChange="document.forms['aaa'].submit()" > <option value="111">111</option> <option value="222">222</option> </select> </form> 上記のスクリプトを単純にphpで表示したいのですが、どうやってもphpで囲むとonChangeが動かず 動的にはなりません。 何時間もぐぐったりしてますが解決しません。タグの中のjavascriptは直接phpでは動かせないのでしょうか?

    • ベストアンサー
    • PHP
  • PHPでのCookie

    PHPでクッキーを使い、下記のような入力フォームを作りました。 form.phpで入力→form2.phpで正常出力出来るのですが、 form2.phpで一度更新しないと、結果が画面に表示されません。 これをform2.phpを開いた時点で表示されるようにするには、どのように書けばいいのでしょう。 後1つあります。form.phpで 「テスト&1」と書くと「テスト」としか表示されなく、&とそれ以降が記憶されません。 これはなぜでしょうか? お願いします。 【form.php】 <?PHP parse_str($_COOKIE["city"]); parse_str($_COOKIE["city_name"]); ?> <html> <form method="post" action="form2.php"> <?PHP echo "名前1<input type=text name=name1 maxlength=16 size=12 value=$set_name1> <BR>ID<input type=text name=p1 maxlength=8 size=6 value=$set1><BR><BR>"; echo "名前2<input type=text name=name2 maxlength=16 size=12 value=$set_name2> <BR>ID<input type=text name=p2 maxlength=8 size=6 value=$set2>"; ?> <input type="submit" value="実行"> </form> </html> 【form2.php】 <?php if ($_POST) { $city1 = $_POST["p1"]; $city2 = $_POST["p2"]; $city_name1 = $_POST["name1"]; $city_name2 = $_POST["name2"]; setcookie ("city", "set1=$city1&set2=$city2",time()+3600*24*90); setcookie ("city_name", "set_name1=$city_name1&set_name2=$city_name2",time()+3600*24*90); } parse_str($_COOKIE["city"]); parse_str($_COOKIE["city_name"]); echo $set_name1; echo $set1; echo $set_name2; echo $set2; ?>

    • ベストアンサー
    • PHP
  • 問い合わせフォームでの確認画面について

    phpで問い合わせフォームを作成しているのですが、修正ヵ所があれば問い合わせフォームの下に「戻る」ボタンだけを表示し、正確に入力されていれば「戻る」ボタンと「OK」ボタンを表示することができました。 しかし、問い合わせフォームの上に表示する、修正ヵ所があれば「入力内容に誤りがあります。※印の項目は必ずご記入ください。」、正確に入力されていれば「以下の内容で送信しますか?」を表示させることができません。 この場合、どのようなコードを、どの部分に記述したら良いのでしょうか? ちなみに、submit後のphpファイルのコードは以下となります。 かなり無駄が多いかもしれません。 <table class="table margin01" width="592" border="0" cellpadding="0" cellspacing="0"> <tr> <td width="190" align="left" bgcolor="#FFF09D">お名前<span class="tabletext1"></span></td> <td> <?php $name=$_POST['name']; if($name=='') { echo'<FONT COLOR="#cc3333">※必ず入力してください。</FONT>';; } else { echo $name; } ?> </td> </tr> <tr> <td align="left" bgcolor="#FFF09D">メールアドレス<span class="tabletext1"></span></td> <td> <?php $mail=$_POST['mail']; if (!preg_match( '/^[a-z0-9][a-z0-9_\.\-]*@[a-z0-9][a-z0-9_\.\-]+[a-z]$/i', $mail)) { echo'<FONT COLOR="#cc3333">※正しいメールアドレスを指定してください。</FONT>';; }elseif($_POST['mail']!==$_POST['mail2']) { echo '<FONT COLOR="#cc3333">※確認用メールアドレスと一致していません。</FONT>';; }else{ echo $mail; } ?> </td> </tr> <tr> <td align="left" bgcolor="#FFF09D">メールアドレス(確認)<span class="tabletext1"></span></td> <td> <?php $mail2=$_POST['mail2']; if($mail2=='') { echo'<FONT COLOR="#cc3333">※必ず入力してください。</FONT>';; } else { echo $mail2; } ?> </td> </tr> <tr> <td align="left" bgcolor="#FFF09D">お問い合せ内容<span class="tabletext1"></span></td> <td> <?php $list=$_POST['list']; if($list=='お問い合せ内容をお選びください') { echo'お問い合せ内容をお選びください<FONT COLOR="#cc3333">&nbsp;※必ず入力してください。</FONT>';; } else { echo $list; } ?> </td> </tr> <tr> <td align="left" bgcolor="#FFF09D">内容<span class="tabletext1"></span></td> <td> <?php $content=$_POST['content']; if($content=='') { echo'<FONT COLOR="#cc3333">※必ず入力してください。</FONT>';; } else { echo $content; } ?> </td> </tr> </table> <?php if($name==''|| $mail==''|| $mail2==''|| $list==''|| $content=='') { echo'<form>'; echo'<p align="center" class="margin01"><input type="button" value="戻る" onclick="history.back()"</p>'; echo'</form>'; } elseif($_POST['mail']!==$_POST['mail2']) { echo'<form>'; echo'<p align="center" class="margin01"><input type="button" value="戻る" onclick="history.back()"</p>'; echo'</form>'; } elseif(!preg_match( '/^[a-z0-9][a-z0-9_\.\-]*@[a-z0-9][a-z0-9_\.\-]+[a-z]$/i', $mail)) { echo'<form>'; echo'<p align="center" class="margin01"><input type="button" value="戻る" onclick="history.back()"</p>'; echo'</form>'; } elseif($list=='お問い合せ内容をお選びください') { echo'<form>'; echo'<p align="center" class="margin01"><input type="button" value="戻る" onclick="history.back()"</p>'; echo'</form>'; } else { echo'<form method="post"action="thanks.php">'; echo'<input type="hidden" name="name" value="'.$name.'">'; echo'<input type="hidden" name="mail" value="'.$mail.'">'; echo'<input type="hidden" name="mail2" value="'.$mail2.'">'; echo'<input type="hidden" name="list" value="'.$list.'">'; echo'<input type="hidden" name="content" value="'.$content.'">'; echo'<p align="center" class="margin01"><input type="button"onclick="history.back()"value="戻る">'; echo'<input type="submit"value="OK"></p>'; echo'</form>'; } ?>

    • ベストアンサー
    • PHP
  • $argv[1] の真偽判定

    PHPの勉強を始めた初心者です。 次のようなスクリプトを書いてみたのですが、false と入力しても、真と判定されてしまいます。 何故こうなるのか、お教えいただければ幸いです。 <?php // p075_a.php if( isset($argv[1]) && $argv[1] ) { echo "与えられた引数は真です\n"; } elseif ( isset($argv[1]) && !$argv[1] ) { echo "与えられた引数は偽です\n"; } else { echo "引数が与えられていません\n"; } [study_php@localhost ch03]$ php p075_a.php '' 与えられた引数は偽です [study_php@localhost ch03]$ php p075_a.php "" 与えられた引数は偽です [study_php@localhost ch03]$ php p075_a.php 0 与えられた引数は偽です [study_php@localhost ch03]$ php p075_a.php 0.0 与えられた引数は真です [study_php@localhost ch03]$ php p075_a.php false 与えられた引数は真です [study_php@localhost ch03]$

    • ベストアンサー
    • PHP
  • php入力画面から確認画面へ情報の受け渡しについて

    php 参考書を見て、入力フォームを作成しているのですが、入力画面から確認表示画面へ情報の受け渡しについて。コードは下に記載してます。 最初の入力画面ではmethod=postで送信した値を$name = $_POST['name'];に格納して次ページに値を渡すそうですが、 しかし最初の入力画面のコードに$name = $_POST['name'];と、もうひとつ、$name = $_SESSION['name'];でセッションに保存して、次ページに送るそうですが、 保存したSESSIONの値は次ページの確認表示画面から戻る際に値を保持する際に使うからだそうですが、値を次ページに送る役割が$_POSTやSESSIONにあるならば、SESSIONの記述のみで 次ページに送れると思うのですが、なぜこのコードの場合、$_POSTに値を格納する必要があるのでしょうか? 以下のような解釈で正しいでしょうか?? 「$_POSTは送られた値をフォームのvalue内にechoで出力するため、SESSIONはページから戻る場合に値を保持するため」 回答よろしくお願いいたします。 コード 入力初期画面 <?php session_start(); $errors = array(); if(isset($_POST['submit'])){ $name = $_POST['name']; if($name === ""){ $errors['name'] = "お名前が入力されていません。"; } if(count($errors) ===0){ $_SESSION['name'] = $name; header('Location:https:次ページへform2.php'); exit(); } } ?> <body> <form action="form1.php" method="post"> お名前 <input type="text" name="name" value="<?php if(isset($name)){echo $name;}?>"> <input type="submit" name="submit" value="確認画面へ"> </body> コード 確認表示画面 <?php session_start(); if(isset($_SESSION['name'])){ $name = $_SESSION['name']; } <body> <form action="form3.php" method="post"> お名前 <?php echo $name;?> <input type="submit" name="submit" value="送信する"> p><a href="form1.php?action=edit">入力画面へ戻る</a></p> </body>

    • ベストアンサー
    • PHP
  • postのタイムラグ

    以下のソースでPOSTの値が取れないときがあるので困っています。 具体的にはページを表示してから30秒程度待ってからの クリックじゃないとPOSTの値が取れません。 GETの場合はページ表示後すぐにボタンをクリックしても大丈夫でした。 原因が分からず途方に暮れています。 お知恵をお貸しください。 PHP Version 5.2.3 <?php $P_data = $_POST["pg"]; print("POST=>".$P_data."<BR>"); $G_data = $_GET["pg"]; print("GET=>".$G_data."<BR>"); print <<< DOC_END <html> <head> </head> <body> DOC_END; echo"<form action=test.php method=post>"; echo"<input type=hidden name=pg value=1>"; echo"<input type=submit value=あ>"; echo"</form>"; echo"<form action=test.php method=post>"; echo"<input type=hidden name=pg value=2>"; echo"<input type=submit value=い>"; echo"</form>"; echo"<form action=test.php>"; echo"<input type=hidden name=pg value=3>"; echo"<input type=submit value=う>"; echo"</form>"; echo"<form action=test.php>"; echo"<input type=hidden name=pg value=4>"; echo"<input type=submit value=え>"; echo"</form>"; print <<< END </body> </html> END; ?>

    • 締切済み
    • PHP

専門家に質問してみよう