WordPressに自作のログイン画面を設置しました。
bitnamiというローカル環境ツールでは下記のソース
でログイン画面が機能していましたが、
サーバーへアップロードすると機能しなくなりました。
どこがおかしいのでしょうか?
よろしくお願い致します。
PHP
1<?php 2session_start(); 3$_SESSION['login'] = 0; 4 5include(STYLESHEETPATH . "/op/class.php"); 6 7if ($_POST['nextProcess'] == "confirm") { 8 $mode = "mem_check"; 9} else { 10 $mode = "input"; 11} 12 13switch ($mode) { 14 case 'input': 15 input(); 16 break; 17 18 case 'mem_check': 19 MemCheck(); 20 break; 21 22 default: 23 # code... 24 break; 25} 26 27 28function input() { 29 30?> 31<h2>オンラインプログラム会員の方はこちらから</h2> 32<form method="post" action="" class="form"> 33 <input type="hidden" name="nextProcess" value="confirm"> 34 <div class="box01"> 35 <div class="formWrap"> 36 <div class="formLayout border-non"> 37 <div class="left required">ID (Eメール)</div> 38 <div class="right"> 39 <input type="email" name="email" value="" > 40 </div> 41 </div> 42 <div class="formLayout"> 43 <div class="left required">パスワード</div> 44 <div class="right"> 45 <input type="password" name="password" value=""> 46 <span>※英数字6~32文字でお願いします。</span> 47 </div> 48 </div> 49 </div> 50 </div> 51 <div class="btnArea"> 52 <button class="btn01 arrowRight red" type="submit">ログイン</button> 53 </div> 54</form> 55 56<?php 57} 58 59 60function MemCheck() { 61 62 global $wpdb; 63 $tools = new tools(); 64 65 66 // 会員情報を取得 67 $get_member = $wpdb->get_row("SELECT * FROM wp_op_member WHERE email ='".$_POST['email']."'"); 68 foreach ($get_member as $key => $value) { 69 $get_pw = $get_member->password; 70 $get_level = $get_member->level; 71 } 72 73 // 会員登録確認 (mail存在するかどうか) 74 if ($get_member != NULL) { 75 76 $pw_dec = $tools->OpenSsl($get_pw,'dec'); 77 78 if ($pw_dec == $_POST['password']) { 79 $_SESSION['login'] = 1; 80 $_SESSION['level'] = $get_level; 81 $url = home_url().'/online-program'; 82 header('location:'.$url); // ページを移動(リダイレクト) 83 exit; 84 } else { 85 ?> 86 <br><br> 87 <div class="box01"> 88 <p>入力されたパスワードに間違いがありました。</p> 89 <p>もう一度やり直してください。</p> 90 </div> 91 <div class="btn_waper"> 92 <button class="btn01 arrowLeft gray" type="button" onclick="history.back()">戻る</button> 93 </div> 94 <br> 95 <?php 96 } 97 98 99 100 } else { 101 ?> 102 <br><br> 103 <div class="box01"> 104 <p>入力されたメールアドレスは登録がございません。</p> 105 <p>もう一度やり直してください。</p> 106 </div> 107 <button class="btn01 arrowLeft gray" type="button" onclick="history.back()">戻る</button> 108 <br> 109 <?php 110 } 111 112 113} 114 115 116
エラーログの表示は出ておりませんでした、
ログイン画面にIDとパスワードを入力し、ログインボタンを押すと
ログインできなかった場合は、
「入力されたパスワードに間違いがありました。もう一度やり直してください。」
と表示されるか、
ログインができた場合は、ログイン後の画面に遷移します。
ローカル環境でテストした際はこの様な動作だったのですが
、
サーバーへアップしてテストしてみたところ
ログイン画面にIDとパスワードを入力し、ログインボタンを押すと
どちらの表示もされず元のログイン画面が表示されます。
あなたの回答
tips
プレビュー