2017-08-02 48 views
-1

我试图在成功登录时向用户显示数据,但我的代码不工作。显示从mysqli到php的数据

以下是我的代码:

if(isset($_POST['submit'])){ 
    $username=$_POST['username']; 
    $password=$_POST['password']; 
    $query = mysqli_query($conn, "SELECT * FROM mylogin WHERE username='$username' and password='$password'"); 
    if (mysqli_num_rows($query) != 0){ 
     echo "sucess" , header('Location: welcome.php'); 

    } else { 
     echo "invalid username or password"; 
    } 
} 
?> 

数据页

$database_name = "id2425621_login"; 
$conn = mysqli_connect($servername, $username, $password, $database_name); 
if (!$conn) { 
    die(mysqli_error($conn)); 
} 
$sql = mysql_query("SELECT id, fname, lname, email FROM patients"); 

?> 
<table border="2" style= "background-color: #84ed86; color: #761a9b; margin: 0 auto;" > 
     <thead> 
     <tr> 
      <th>id</th> 
      <th>fname</th> 
      <th>lname</th> 
      <th>email</th> 

     </tr> 
     </thead> 
     <tbody> 
     <?php 
      while($row = mysql_fetch_assoc($sql)){ 
      echo 
      "<tr> 
       <td>{$row['id']}</td> 
       <td>{$row['fname']}</td> 
       <td>{$row['lname']}</td> 
       <td>{$row['email']}</td> 
      </tr>\n"; 
      } 

     ?> 
     </tbody> 
    </table> 

请指引我正确的语法来解决我的问题。

+0

'mysql_fetch_assoc'应该是'mysqli_fetch_assoc'。你的代码使用'mysql'和'mysqli'。你需要删除'mysql' –

+0

首先,初始sql语句容易受到sql注入攻击,第二个是混合'mysqli'和'mysql' apis – RamRaider

+0

您只需将mysql_fetch_assoc更改为mysqli_fetch_assoc并且它可以工作。如果有其他问题,请告诉我。 –

回答

-3

使用mysqli不是mysql - 不再支持mysql。

<?php 
    $database_name = "id2425621_login"; 
    $conn = mysqli_connect($servername, $username, $password, $database_name); 
    if (!$conn) { 
     die(mysqli_error($conn)); 
    } 
    $sql = mysqli_query($conn,"SELECT id, fname, lname, email FROM patients"); 

    ?> 
<table border="2" style= "background-color: #84ed86; color: #761a9b; margin: 0 auto;" > 
     <thead> 
     <tr> 
      <th>id</th> 
      <th>fname</th> 
      <th>lname</th> 
      <th>email</th> 
     </tr> 
     </thead> 
     <tbody> 
     <?php 
      while($row = mysqli_fetch_assoc($sql)){ 
      echo 
      "<tr> 
       <td>{$row['id']}</td> 
       <td>{$row['fname']}</td> 
       <td>{$row['lname']}</td> 
       <td>{$row['email']}</td> 
      </tr>\n"; 
      } 
     ?> 
     </tbody> 
    </table> 
+0

解释你已经解决了什么问题。 –

+0

我不明白为什么downvote?他使用mysqli进行连接,使用mysql进行查询和获取数据......这是一个问题。 – Farsay

+0

你没有解释什么是问题,你是如何修复它的。 –