【问题标题】:PHP display text from MYSQLPHP 显示来自 MYSQL 的文本
【发布时间】:2015-04-29 03:11:45
【问题描述】:

我对 PHP 编码还是很陌生。

我有代码可以从我的数据库中请求和显示数字,但我似乎不知道如何显示文本。我用不同的短语在 Google 上搜索过,但无法找出答案。

我有以下代码:如您所见,第二个语句是数字格式并且效果很好,但是我需要更改第一个语句以显示用户名而不是数字。

所以与其说“.number_format((float)$row['0']) .”,不如说它需要说什么?因此它显示了具有最多令牌的用户名。


编辑:我在发布的原始代码中添加了符号,以便更容易看到我在最终代码中所做的工作。
/*Begin username search*/
$result = mysqli_query($con,"SELECT username FROM authorize WHERE MAX(tokens)");
/*End username search*/

/*Begin display of username*/
while($row = mysqli_fetch_array($result)) {
  echo "<tr>";
  echo "<td class='pslc'>" . number_format((float)$row['0']) . "</td>";
}
/*End display of username*/

/*Begin search of tokens for username*/
$result = mysqli_query($con,"SELECT MAX(tokens) FROM authorize");
/*End search of tokens for username*/

/*Begin display of tokens for username*/
while($row = mysqli_fetch_array($result)) {
  echo "<td class='psrc'>" . number_format((float)$row['0'], 5, '.', '') . "</td>";
  echo "</tr>";
}
/*End display of tokens for username*/



编辑:这是我最终代码的更新,以便其他人可以看到我所做的。

首先我编辑了“ .number_format((float)$row['0'], 5, '.', '') . ” 说“ . $row['0'] . ”这个改变就完成了不解决我的问题。 因此,经过多次试验和错误,我发现我需要编写一个请求 MAX(令牌)的代码。在请求 MAX(tokens) 之后,告诉下一次搜索以找到与所提供的令牌数量相关的用户名。然后在页面上显示用户名和令牌。

/*Begin username search*/
$result = mysqli_query($con,"SELECT MAX(tokens) FROM authorize");
while($row = mysqli_fetch_array($result)) {
$maxtokenusername=("SELECT username FROM authorize WHERE tokens = '" . $row['0'] . "'");
}
/*End username search*/

/*Begin display of username*/
$result = mysqli_query($con,$maxtokenusername);
while($row = mysqli_fetch_array($result)) {
  echo "<tr>";
  echo "<td class='pslc'><center>" . $row['0'] . "</center></td>";
}
/*End display of username*/

/*Begin search of tokens for username*/
$maxtokens=("SELECT MAX(tokens) FROM authorize");
/*End search of tokens for username*/

/*Begin display of tokens for username*/
$result = mysqli_query($con,$maxtokens);
while($row = mysqli_fetch_array($result)) {
  echo "<td class='psrc'>" . number_format((float)$row['0'], 5, '.', '') . "</td>";
  echo "</tr>";
}
/*End display of tokens for username*/

【问题讨论】:

    标签: php mysql text numbers format


    【解决方案1】:

    从您的代码中删除零件 number_format((float)) 简单地说

     echo "<td class='pslc'>" .$row['0']. "</td>";
    

    【讨论】:

    • 好吧,根据您在数据库中存储的内容以及您想要呈现的方式,您可能需要使用 html_entities() 或其他一些字符串过滤/转义方法。
    • 这个答案让我得到了我需要的最终结果,并且在我的情况下是最正确的。
    【解决方案2】:

    请这样尝试:使用 MySQL 的 FORMAT() 函数

    select
        format(field, 2) as formatted
    from
        table
    

    如果 field = 100 将被格式化为 100.00。

    为您的查询尝试

    SELECT format(MAX(tokens), 2) as formatted 
    FROM authorize
    

    在你的 phpmyadmin 上运行这个查询

    如果使用 php,请使用 PHP number_format()

    number_format($number, 2, '.', '');
    

    如果 number= 100 将被格式化为 100.00

    试一试

    number_format($row['0'], 2, '.', '');
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-06-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多