2017-06-03 10 views
0

みなさん、私はPHPで初めてです。私はw3cをチェックし、良いヒントを得ました。しかし私は私のログインコードには少し挑戦しています。それはPHPを示しています警告:ヘッダー情報を変更することはできません - すでに送信されたヘッダー(/home/perspect/public_html/jst/dbcon.php:2で出力が開始されました)/home/perspect/public_html/jst/index.php 8行目 以下は私のインデックスページです。php loginはオフラインで動作しますが、オンラインではありません

<?php 
session_start(); 
include_once 'includes/dbcon.php'; 

if(isset($_SESSION['user'])!="") 
{ 
    header("Location: candidate_list.php"); 
} 

if(isset($_POST['btn-login'])) 
{ 

    $username = mysqli_real_escape_string($con, $_POST['username']); 
    $password = mysqli_real_escape_string($con, $_POST['password']); 
    $stat = 'notvoted'; 

    $res=mysqli_query($con,"SELECT * FROM students WHERE username='$username' AND status='$stat'"); 
    $row=mysqli_fetch_array($res); 

    if($row['password']==md5($password)) 
    { 
     $_SESSION['user'] = $row['user_id']; 
     header("Location: candidate_list.php"); 
    } 
    else 
    { 
     ?> 
     <script>alert('wrong details');</script> 
     <?php 
    } 

} 
?> 
<!-- Login Box --> 
          <div class="col-md-6 col-md-offset-3 col-sm-offset-3"> 
           <form class="login-page" action="" method="post"> 
            <div class="login-header margin-bottom-30"> 
             <h2>Login</h2> 
            </div> 
            <div class="input-group margin-bottom-20"> 
             <span class="input-group-addon"> 
              <i class="fa fa-user"></i> 
             </span> 
             <input placeholder="VIN" name="username" class="form-control" type="text"> 
            </div> 
            <div class="input-group margin-bottom-20"> 
             <span class="input-group-addon"> 
              <i class="fa fa-lock"></i> 
             </span> 
             <input placeholder="Password" name="password" class="form-control" type="password"> 
            </div> 
            <div class="row"> 

             <div class="col-md-6"> 
              <button class="btn btn-primary pull-right" type="submit" name="btn-login">Login</button> 
             </div> 
            </div> 
            <p> 
           </form> 
          </div> 
          <!-- End Login Box --> 

私candidate_list.phpコードです。

<?php 
session_start(); 
include_once 'includes/dbcon.php'; 

if(!isset($_SESSION['user'])) 
{ 
    header("Location: index.php"); 
} 
$res=mysqli_query($con, "SELECT * FROM students WHERE user_id=".$_SESSION['user']); 
$userRow=mysqli_fetch_array($res); 
?> 

マイDBCONが

<?php 

$con=mysqli_connect("xxx","xxx","xxxx","xxx"); 
// Check connection 
if (mysqli_connect_errno()) { 
echo "Failed to connect to MySQL: " . mysqli_connect_error(); 
} 

?> 

では、あなたの助けをいただき、ありがとうございます。

+0

を使用することができる場合は、この行を変更してみました: 'ISSET($ _ SESSION [ 'ユーザー']) != "" 'isset($ _ SESSION ['user'])'によって? –

+0

ちょうど試しましたが、それでも動作しません –

+0

クイックチェック - dbconファイルの '<?php'の前に空白がありますか?すべきではない。 –

答えて

1

このタイプのPHP警告は、ヘッダーのリダイレクトの前に何かをエコーすると表示されます。

あなたはまだあなたがのob_start使用することができますリダイレクトしたいか、あなたはjavascriptを

window.location.href =パス
+0

このアイデアは本当に私がそれを正しく得るのを助けました..ありがとう –

関連する問題