2016-06-03 4 views
0

Что не так с моим кодом? Он не входит в систему, что я делаю неправильно? echo "1;" и т. Д. Для проверки хорошего соединения.Форма входа не входит в систему

<?php 
session_start(); 

if(!isset($_POST['username'])) 
$_POST['username'] = ''; 
if(!isset($_POST['password'])) 
$_POST['password'] = ''; 

if (isset($_SESSION['ingelogd'])) header("location: index.php"); 


$dbhost = "localhost"; 
$dbuser = "pc4u0fi_username"; 
$dbpass = "pc4upc4u1"; 
$dbname = "pc4u0fi_pc4u"; 
$conn = new mysqli($dbhost, $dbuser, $dbpass, $dbname); 

if ($conn->connect_error) die("Connection failed"); 
echo "1;"; 
if (isset($_POST['submit'])) { 
echo "2;"; 

$uname = $_POST['username']; 
$wwoord = $_POST['password']; 
echo "3;"; 


$query = 'SELECT * FROM Klanten WHERE klant_username = "' . $uname . '" && klant_password = "' . $wwoord . '"'; 
echo "4;"; 

$result = $conn->query($query); 

if ($result->num_rows == 1) { 
    $result = $result->fetch_row(); 
    $_SESSION['ingelogd'] = true; 
    echo "5;"; 

    header("location: index.php"); 
} else { 
    $msg = "Inloggegevens incorrect."; 
} 
//$conn->close(); 
} 
?> 
<script> 
function myFunction() { 
    alert("U bericht is verzonden. Er word zo spoedig mogelijk contact met u opgenomen."); 
} 
</script> 
<link href="contact.css" rel="stylesheet"> 

<style type="text/css"> 
input, td, tr { 
    padding-right: 20px; 
} 
</style> 
<form class="form-horizontal" role="form" method="post"> 
<div class="form-group"> 
    <label class="control-label col-sm-2" style="text-align: left; width: 120px; margin-left: 10px; margin-top: 10px;" for="username">Username:</label> 
    <div class="col-sm-10"> 
     <input type="text" class="form-control" id="username" name="username" style="width: 250px; margin-top: 10px;" required placeholder=""> 
    </div> 
</div> 
<div class="form-group"> 
    <label class="control-label col-sm-2" for="password" style="text-align: left; width: 120px; margin-left: 10px; margin-top: 10px;">Password:</label> 
    <div class="col-sm-10"> 
     <input type="password" class="form-control" id="password" name="password" style="width: 250px; margin-top: 10px;" required placeholder=""> 
    </div> 
</div> 
<div class="form-group"> 
    <div class="col-sm-offset-2 col-sm-10"> 
     <button type="submit" style="margin-left: 120px; margin-bottom: 10px;" class="btn btn-default" name="submit">Inloggen</button> 
    </div> 
</div> 
</form> 
+0

Есть ли ошибки. Возможные ошибки –

+0

У вас есть какие-либо ошибки ??? А что ваш код эхо 1,2,3 ???? – Saty

+0

что вы получили после того, как вы запустили? –

ответ

0

От php.net:

Помните, что заголовок() должна вызываться перед любой фактический вывод направляется, либо с помощью обычных HTML-теги, пустые строки в файле, или из PHP.

Повторяя номера, вы можете переломить перенаправление на index.php.

0

Первым шагом, который вам нужно будет сделать, является поставить exit; после каждой функции header(). Если вы этого не сделаете, код, который появляется после функции header(), будет продолжать выполняться.

Вторая хорошая практика заключается в том, чтобы выполнять запрос только в том случае, если форма фактически отправлена. Вы можете сделать это, используя:

if ($_SERVER['REQUEST_METHOD'] == 'POST') { 
    // Validate login here 
}