2016-08-05 17 views
0

mysqlに少し錆びています。特にmysqlの場合はi ...下のスクリプトでは何も起こらず、変数$ row [username]などは空です。私は間違って何をしていますか?MySQLデータベースから行をフェッチできません

<?php 

session_start(); 
include_once('./db_config.php'); 

if (mysqli_connect_errno()) 
    { 
    echo "Failed to connect to MySQL: " . mysqli_connect_error(); 
    } 

$username = mysqli_real_escape_string($conn, $_POST['username']); 
$password = md5(mysqli_real_escape_string($conn, $_POST['password'])); 

$query = "SELECT * FROM players WHERE username = '".$username."' AND password = '".$password."'"; 

if($res = mysqli_query($conn, $query)) 
{ 
    $row = mysqli_num_rows($res); 
    $_SESSION['Username'] = $row['username']; 
    $_SESSION['uID'] = $row['id']; 
    $_SESSION['Join_Date'] = $row['join_date']; 
    mysqli_free_result($res); 

    header('Location: ../index.php'); 
} else 
{ 
    echo mysqli_error($conn); 
} 

?> 
+0

'mysqli_num_rows'は行数ではなく列数を返します。 – SOFe

+0

あなたのコードに誤字があると思うので、mysqli_fetch_arrayを見つけることができません。 – dadan

答えて

2

あなたはmyql_num_rowsを行っている代わりにレコードをフェッチしていない、これは、レコード

$row = mysqli_fetch_array($res,MYSQLI_ASSOC);

<?php 

session_start(); 
include_once('./db_config.php'); 

if (mysqli_connect_errno()) 
    { 
    echo "Failed to connect to MySQL: " . mysqli_connect_error(); 
    } 

$username = mysqli_real_escape_string($conn, $_POST['username']); 
$password = md5(mysqli_real_escape_string($conn, $_POST['password'])); 

$query = "SELECT * FROM players WHERE username = '".$username."' AND password = '".$password."'"; 

if($res = mysqli_query($conn, $query)) 
{ 

    $row = mysqli_fetch_array($res,MYSQLI_NUM); 
    $_SESSION['Username'] = $row['username']; 
    $_SESSION['uID'] = $row['id']; 
    $_SESSION['Join_Date'] = $row['join_date']; 
    mysqli_free_result($res); 

    header('Location: ../index.php'); 
} else 
{ 
    echo mysqli_error($conn); 
} 

?> 
にフェッチし

使用(これは、レコードの唯一の一切を与えません)

+0

本当に何が間違っていて、あなたの答えが実際に言及されていることに気付いてよかったです。 –

+0

@Anish答えをありがとう!それはまだ私に未定義のインデックスエラーの束を与えます、例えば: 'Notice:Undefined index:username' – Micard

+0

あなたはここに貼り付けられますか? – Anish

関連する問題