2016-02-12 2 views
0

Так что я пытаюсь создать подтверждение учетной записи, но это совсем не работает.подтверждение счета не работает

Это страница входа в систему, и она должна проверять, когда учетная запись активирована, но даже если значение подтверждено в базе данных, она всегда показывает, что она не активирована, поэтому она всегда отображает неактивированные сообщения.

if(isset($_POST['login_button'])) 
{ 
$userName = $_POST['username']; 
$userPass = $_POST['password']; 

$hashedPass = hash('whirlpool', $userPass); 
$query = "SELECT Ime FROM Igraci WHERE Ime = '$userName' AND Lozinka = '$hashedPass'"; 
$stmt = mysqli_prepare($con, $query) or die(mysqli_error($con)); 
mysqli_stmt_bind_param($stmt, "ss", $userName, $hashedPass); 
mysqli_stmt_execute($stmt); 
$result = mysqli_stmt_get_result($stmt); 
$row = mysqli_fetch_array($result); 

while($conf = mysqli_fetch_assoc(query)) 
{ 
    $aktiviran = $conf['Confirmed']; 
} 

if($row) 
{ 

    if($aktiviran == 1) 
    { 
     $session = md5($userName.$hashedPass); 
     mysqli_query($con, "UPDATE Igraci SET session = '$session' WHERE Ime = '$userName' AND Lozinka = '$hashedPass'"); 
     setcookie("username", $_POST['username'], time()+3600*24); 
     setcookie("authorization","ok"); 
     header("Location:welcome.php"); 
     exit(); 
    } 
    else 
    { 
     echo ' 
         <div class="transbox" position = "center"> 

      <center><p>Ovaj racun nije aktiviran, molimo da ga aktivirate.</p> 
      <p>Ukoliko niste primili email proverite junk folder ili ponovo zatrazite aktivaciju racuna.</p> 
      </center> 

      </div> 
     '; 

    } 
} 
+0

Что вы получаете с var_dump ($ aktiviran); перед тем, если? – Tdelang

+0

Я получаю нуль, что это значит? Я думаю, проблема связана с получением $ aktiviran из базы данных, когда я устанавливаю его как $ aktiviran == 0 его ok – Nathaniel

ответ

0

Попробуйте так:

if($row) { 
    if($row[number of the column 'Confirmed']==1) { 
     // do the stuff 
    } else { 
     // do the other stuff 
    } 
} 

Таким образом, вы не будете нуждаться в то время как() и FETCH_ASSOC() (то есть возвращается нуль)

+0

Я действительно не понимаю эту часть номер колонки, что мне там положить? – Nathaniel

+0

На самом деле вы можете использовать имя строки, а также номер строки: '$ row [" Confirmed "] == 1'. –

+0

Нет, опять же не работает – Nathaniel

Смежные вопросы