-1

drupal 6で、カスタムuser-register.tpl.phpフォームを作成しました。ユーザー名または電子メールがすでに存在する場合、ボックスは赤になりますが、「電子メールは既に登録されています」というエラーメッセージは表示されません。「ログイン情報がメールで送信されました」という登録に成功した場合も、メッセージは表示されません。

どうすればこれを修正できますか?私のコードは

    <div id="registration_form">
    <div class="field">
    <?php  print drupal_render($form['name']); // prints the username field
    ?>
    </div>
    <div class="field">
    <?php
    print drupal_render($form['mail']); // print the email field
    ?>
    </div>
   <div class="field">
   <?php
    print drupal_render($form['submit']); // print the submit button
   ?>
   </div>
   <?php
    print drupal_render($form['timezone']);
    print drupal_render($form['form_build_id']);
    print drupal_render($form['form_id']);
    ?>
    <?php
    drupal_set_message('< pre >'. var_export($variables,TRUE) .'< /pre >');
    ?>

ありがとうございました

4

1 に答える 1

2

drupal_set_message()メソッドによって作成されたメッセージは、変数$messagesを使用してpage.tpl.phpに直接出力できます。したがって、page.tpl.phpで、次の行が存在することを確認してください。

<?php print $messages; ?>

各エラーを個別に出力する必要がある場合は、form_get_error($element)を使用する必要があります。$elementは入力の名前です

于 2012-12-21T10:20:22.920 に答える