0

解決できない問題に遭遇しました。

私はfuelphpのドキュメントを見て、そのようにしましたが、渡されたwalueでエラーが発生します

コード

$email_data = array();
//echo Config::get('base_url'). "user/activate/". $user['hash'];
$email = Email::forge();
$email->from('my@email.me', Config::get('site_name'));
$email->to(Input::post('email'), Input::post('first_name') . " " . Input::post('last_name'));
$email->subject('Regisztráció');

$email_data['name'] = "Kedves " . Input::post('first_name'). " " .Input::post('last_name') ."<br><br>" ;
$email_data['title'] = "Üdvözöllek a ".Config::get('site_name')." oldalán" ."<br>";
$email_data['link'] = '<a href="'.Config::get('site_url'). "user/activate/". $user['hash'].'">Fiókod mherősítéséhez kérlek kattints ide</a>';

$email->html_body(\View::forge('email/activation', $email_data));
$email->send();

$response->body(json_encode(array(
'status' => 'ok',
)));

メールテンプレートファイル

<?php 

print_r($email_data);
 ?>

そしてメールは私にこれを送ります

Notice!

ErrorException [ Notice ]: Undefined variable: email_data

APPPATH/views/email/activation.php @ line 3:

2:3:print_r($email_data);4:?>

誰かが私に何が間違っているのかヒントを教えてもらえますか?

4

2 に答える 2

2
$email->html_body(\View::forge('email/activation', $email_data));

する必要があります

$email->html_body(\View::forge('email/activation', array('email_data' => $email_data)));
于 2012-08-10T23:43:15.897 に答える
1

あなたのコントローラは正しいです。これは正しくないテンプレートです。

ビュー (テンプレート) にデータを渡すときは、配列として渡します。したがって、次のように表示されます。

...
You Name is : <?php echo $name ?>
You title is : <?php echo $title ?>
...

これは、それが行われるべき方法です。print_r を実行するために配列を他の配列の要素に変換しない...

于 2014-02-14T22:57:16.873 に答える