2016-03-29 7 views
-1

Ich habe eine Zeile in meiner Tabelle, und ich habe diesen Code für meine Anmeldeseite geschrieben. Leider funktioniert es auf der Anmeldeseite der Benutzer, aber nicht auf der Admin-Anmeldeseite.

if ($result = mysqli_query($connection, "SELECT * FROM admin WHERE username = '$username' AND password = '$password'")) { 
     $rownum = mysqli_num_rows($result); 
     if($rownum == 1){ 
      $_SESSION['print_admin'] = 'ok'; 
      header("Location: ../admin/index.php"); 
      die(); 
     } else { 
      echo "password is wrong"; 
     } 
    } 

der $rownum 0 zurück, aber mit diesem Benutzer und übergeben i in der Tabelle eine Zeile haben!

+0

versuchen, dass rownum auf '$ zu ändern> 1 ' – aldrin27

+4

Ihre Abfrage Echo und in phpMyAdmin Prüfung durchführen, was es – Saty

+0

kehre ich tun das und es kann keine Zeile in phpmyadmin auch finden! aber es ist auf dem Tisch vorhanden und ich bin sicher, dass meine Werte wahr sind ... –

Antwort

-1

starten:

$sql = "SELECT * FROM admin WHERE username = '".$username."' AND password = '".$password."'"; 
echo $sql; //copy and test using phpmyadmin :D 

if ($result = mysqli_query($connection, $sql)) { 

    $rownum = mysqli_num_rows($result); 
    if($rownum == 1){ 
     $_SESSION['print_admin'] = 'ok'; 
     header("Location: ../admin/index.php"); 
     die(); 
    } 
    else { 
     echo "password is wrong"; 
    } 
} 
+0

Ich denke, Ihre SQL ist: SELECT * FROM admin WHERE username = '$ username' UND password = '$ password'. Problem ist Single-quoted –

-1

Versuchen Sie dieses:

if ($result = mysqli_query($connection, "SELECT * FROM admin WHERE username = '$username' AND password = '$password'")) { 


    if(mysqli_num_rows($result)){ 
    $_SESSION['print_admin'] = 'ok'; 
    header("Location: ../admin/index.php"); 
    die(); 
    } 
    else { 
      echo "password is wrong"; 
    } 
} 
Verwandte Themen