2016-12-28 2 views
0

Я изучаю код с помощью учебных пособий YouTube, и я решил создать систему входа в систему. Когда я попытался это сделать, моя страница входа дает мне ошибки. Я попробовал несколько других способов (используя mysql not mysqli), но все же дал мне эти проблемы. Вот мой PHP код Логин:Вопросы входа в систему с PHP и MySQL. Это мой код или что-то еще?

Файл конфигурации: -

<?php 
    define('DB_SERVER', 'localhost'); 
    define('DB_USERNAME', 'root'); 
    define('DB_PASSWORD', ''); 
    define('DB_DATABASE', 'aspire'); 
    $db = mysqli_connect(DB_SERVER,DB_USERNAME,DB_PASSWORD,DB_DATABASE‌​); 
?> 

Войти страница: -

<?php 
    include("config.php"); 
    session_start(); 

    if($_SERVER["REQUEST_METHOD"] == "POST") { 
     // username and password sent from form 

     $myusername = mysqli_real_escape_string($db,$_POST['username']); 
     $mypassword = mysqli_real_escape_string($db,$_POST['password']); 

     $sql = "SELECT id FROM users WHERE username = '$myusername' and password = '$mypassword'"; 
     $result = mysqli_query($db,$sql); 
     $row = mysqli_fetch_array($result,MYSQLI_ASSOC); 
     $active = $row['active']; 

     $count = mysqli_num_rows($result); 

     // If result matched $myusername and $mypassword, table row must be 1 row 

     if($count == 1) { 
     session_register("myusername"); 
     $_SESSION['login_user'] = $myusername; 

     header("location: welcome.php"); 
     }else { 
     $error = "Your Login Name or Password is invalid"; 
     } 
    } 
?> 

Коды ошибок я получаю являются:

Предупреждение: mysqli_fetch_array() ожидает, что параметр 1 будет mysqli_result, boolean задан в /Приложения/XAMPP/xamppfiles/HTDOCS/loginaspire/index.php в строке 13

Предупреждение: mysqli_num_rows() ожидает параметр 1 будет mysqli_result, логическое значение дано в /Applications/XAMPP/xamppfiles/htdocs/loginaspire/index.php на линии 16

Спасибо за вашу помощь!

+0

показать файл confiq.php –

+0

Можете ли вы показать me the config.php, а также сообщение об ошибке, заданное $ db-> error –

+0

Вот мой 'config.php':' ' –

ответ

0

кажется, что ваш Query не возвращает ничего использовать validation для этого

$result = mysqli_query($db,$sql); 
if(!empty($result) && $result !=null){ 
do rest of thing with $result 
}else{ 
echo("Error description: " . mysqli_error($db)); 
} 

Примечание: Также убедитесь, что у вас есть подключение к базе

-2
$count = mysqli_num_rows($result); 
if($count > 0){ 
//Here your code 
$result = mysqli_query($db,$sql); 
$row = mysqli_fetch_array($result,MY`enter code here`SQLI_ASSOC); 
$active = $row['active']; 
}else{ 
echo "No record found"; 
}