为什么不是我的$ row [userID]打印?

时间:2013-11-21 06:35:15

标签: php mysqli

在我的代码中我试图打印基本上“登录为 _ __ !!!!!!!!!!”如果一个角色成功登录。我不知道为什么这个语法不起作用,并看到很多以前的帖子使用它。

主要是这一行:echo“登录为”。$ row ['userID']。“ !!!!!!!”;

什么是非常困惑的是为什么“echo $ row”不打印任何东西。它应该打印出该行的所有信息吗?

其余代码在这里:

<?php
if(isset($_POST['user']))
{
    //variable declaration 
    $user = $_POST['user'];
    $pass = $_POST['pass'];
    //connect to data base 
    $con=mysqli_connect("engr-cpanel-mysql.engr.illinois.edu","socialdrinkers_b","testing123","socialdrinkers_db");

    $result = mysqli_query($con, "SELECT * FROM Drinker where userID = '$user' AND password = '$pass'");
    echo mysqli_error($con);
    if (mysqli_num_rows($result) >0)
    { // correct info
        while($row = mysqli_fetch_array($result));
        {//cookie implementation
            $expire = time() + 60*60*24; //1 day
            setcookie('idNum', $row['idNum'], $expire);
            echo $row;
            echo "<br>";
            echo "Logged in as <b>".$row['userID']."</b>!!!!!!!";
        }
    }
    else{ // wrong info
        echo "<b>wrong id or pass</b>";
    }
}


echo "<form method = 'post'> 
Username: <input type = 'text' name = 'user'>
Password: <input type = 'password' name = 'pass'>
<input type = 'submit' value = 'LOG IN'> 
</form>";

&GT;

对不起,我问了很多问题,这是我第一次建立一个面向数据库的网站,我们班上的教授没有给出关于其工作原理的非常明确的教程。

1 个答案:

答案 0 :(得分:0)

您应该使用:

  

mysqli_fetch_assoc

而不是

  

mysqli_fetch_array

因为你想获得相关模型中的信息而不是数组模型;)