2016-06-03 2 views
0

내 코드가 잘못되었습니다? 그것은 로그인하지 않습니다, 내가 뭘 잘못하고 있니? echo "1;" 등은 내 연결이 양호한 지 확인하는 것입니다. php.net에서로그인 양식에 로그인하지 않았습니다

<?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을 echo합니다. – Saty

+0

달린 후에 무엇을 얻었나요? –

답변

0

:

그 헤더를 기억() 실제 출력을 보내기 전에 파일에 일반 HTML 태그, 빈 줄에 의해, 또는 PHP에서 역시 호출해야합니다.

숫자를 에코하여 index.php로 리디렉션 할 수 있습니다.

0

당신이 취해야 할 첫 번째 단계는 header() 기능이있을 때마다 exit;을 붙이는 것입니다. 이 작업을 수행하지 않으면 header() 함수 뒤에 오는 코드가 계속 실행됩니다.

두 번째 좋은 방법은 양식이 실제로 제출 된 경우에만 쿼리를 실행하는 것입니다. 다음을 사용하여이 작업을 수행 할 수 있습니다.

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