MySQL Fetch Array从数据库返回空白结果


MySQL Fetch Array echos blank result from database

当试图从数据库中回显用户首字母缩写的结果并将其显示给他们时。问题是它只显示"欢迎",而不是"欢迎,(用户的首字母缩写)"。

以下是我在index.php.中的代码

  • 版本1:

    <?php 
    $getting = mysql_query("
    SELECT `initials` FROM `username` 
    WHERE `pass` = '".$_SESSION['userName']."'
    "); 
    $result = mysql_fetch_array($getting); 
    echo "Welcome, " . $result; 
    ?> 
    create table username
    (
        UserNameID int auto_increment primary key,
        userName varchar(100) not null,
        pass varchar(100) not null,
        initials varchar(20) not null
    );
    insert username (userName,pass,initials) values ('sb','bailey101','SB'),('cb','test','CB');
    

    更新:我删除了$result = mysql_fetch_array($getting);,然后将echo "Welcome, " . $result;更改为echo "Welcome, " . $getting;。然后我得到"欢迎,资源id#6"。我该如何解决此问题?

    目标:

    mysqli返回用户名行的结果集,其中pass=传递的参数。使用第一行来显示用户的首字母缩写。

    请注意忽略第二行和第二行之后的内容,这只是一个测试。

  • SQL查询结果将作为数组返回(因此为mysql_fetch_array())。由于echo不能打印数组数据,因此它根本不打印任何内容。

    SQL查询的第一个结果(仅在本例中)将在$result[0][0]中。因此,您的PHP应该是:

                  <?php 
                    $getting = mysql_query("SELECT `initials` FROM `username` WHERE `pass` = '".$_SESSION['userName']."'");
                    $result = mysql_fetch_array($getting);
                    echo "Welcome, " . $result[0][0]; 
    
                  ?>