ログインエラーメッセージの表示方法

フォーラム 使い方全般 ログインエラーメッセージの表示方法

  • このトピックには1件の返信、2人の参加者があり、最後にnanbuにより9年、 11ヶ月前に更新されました。
2件の投稿を表示中 - 1 - 2件目 (全2件中)
  • 投稿者
    投稿
  • #69989
    stellanova
    参加者

    wordpress、welcart、PHP初心者です。

    いつもお世話になっております。
    現在welcartにログインする際にusces-memberからではなく、トップページからポップアップさせたフォームを通してログインできるようにカスタマイズを行っております。
    フォーム自体はほぼusces-memberのデフォルトで使用しています。
    カスタムの内容としましては、ログインボタンの下にログインフォームを記入し、display:none;で非表示にし、Easy FancyBoxを使用してログインボタンを押すとlightbox風にポップアップ表示されるようにというものですが、ログイン後のリダイレクトをUSCES_MEMBER_URLではなくトップページに指定しているためか、ログイン失敗した際に表示される『エラー: メールアドレスが違います。』などのエラーメッセージが即座に表示されません。(一度トップページに行き、再度ログインボタンを押すとフォーム上に表示されています。)
    可能であれば、ログイン失敗した際、即座にポップアップ上にエラーメッセージが表示されるようにカスタムしたいと考えております。

    どなたか良い対策方法をお持ちでしたらご教授頂けましたら幸いです。
    宜しくお願い致します。
    乱文失礼いたしました。

    参考までにソースを張らせて頂きます。

    <div class=”example1″>

    • <?php usces_loginout_btn(); ?>
    • <div style=”display:none;” class=”fancybox-hidden”>
      <div id=”fancyboxID-1″ class=”hentry” style=”width:460px;height:380px;”>
      <div class=”example2″>
      <div class=”error_message”><?php usces_error_message(); ?></div>
      <p class=”example3″>Login</p>

      <form name=”loginform” id=”loginform” action=”<?php echo apply_filters(‘usces_filter_login_form_action’, home_url( ‘/’ )); ?>” method=”post”>

      <p>
      <label><?php _e(‘e-mail adress’, ‘usces’); ?><br />
      <input type=”text” name=”loginmail” id=”loginmail” class=”loginmail” value=”<?php echo esc_attr(usces_remembername(‘return’)); ?>” size=”20″ /></label>
      </p>
      <p>
      <label><?php _e(‘password’, ‘usces’); ?><br />
      <input type=”password” name=”loginpass” id=”loginpass” class=”loginpass” size=”20″ /></label>
      </p>
      <p class=”forgetmenot”>
      <label><input name=”rememberme” type=”checkbox” id=”rememberme” value=”forever” /> <?php _e(‘memorize login information’, ‘usces’); ?></label>
      </p>

      <p id=”nav”>
      ” title=”<?php _e(‘Did you forget your password?’, ‘usces’); ?>”><?php _e(‘Did you forget your password?’, ‘usces’); ?>
      </p>
      <p id=”nav”>
      <?php if ( ! usces_is_login() ) : ?>
      ” title=”<?php _e(‘New enrollment for membership.’, ‘usces’); ?>”><?php _e(‘New enrollment for membership.’, ‘usces’); ?>
      <?php endif; ?>
      </p>

      <p class=”submit”>
      <?php usces_login_button(); ?>
      </p>
      <?php do_action(‘usces_action_login_page_inform’); ?>
      </form>

      <div class=”footer_explanation”>
      <?php do_action(‘usces_action_login_page_footer’); ?>
      </div>

       </div>
      </div>
      </div>

      <script type=”text/javascript”>
      <?php if ( usces_is_login() ) : ?>
      setTimeout( function(){ try{
      d = document.getElementById(‘loginpass’);
      d.value = ”;
      d.focus();
      } catch(e){}
      }, 200);
      <?php else : ?>
      try{document.getElementById(‘loginmail’).focus();}catch(e){}
      <?php endif; ?>
      </script>

    #70015
    nanbu
    キーマスター

    こんにちは。

    非同期通信を行いユーザーチェックを行い、OKだったらsubmit するという形にしてはいかがでしょうか。

2件の投稿を表示中 - 1 - 2件目 (全2件中)
  • このトピックに返信するにはログインが必要です。