doujing1967 2015-03-12 04:43
浏览 59
已采纳

根据行中的值更改sprintf值

My problem is this

I have a database that stores int value in row "status" that I want to represent certain order status:

0 = submitted

1 = delivered etc.

What I want to achieve is displaying certain text like in the example above instead of int value

My code for displaying whole list is

require 'database_connection.php';
$select_orders = "SELECT username, status, product1_num, product2_num FROM orders";

$result = mysql_query($select_orders);

<ol class="order_list">
        <?php while ($order = mysql_fetch_array($result)) {                 
            $order_row = sprintf("<li class='single_order %s'>
                <ul>
                    <li class='username'>%s</li>
                    <li class='status'>%s</li>
                    <li class='product'>%s</li>
                    <li class='product'>%s</li>
                </ul>
            </li>", 
            $order['status'], $order['username'], $order['status'], $order['product2_num'], $order['product1_num']);
                echo $order_row;
            }
        ?>
</ol>

I tried using if statement inside sprintf but with no success.

Does anyone has any idea how to change displayed code here from

<li class="status">3</li>

to

<li class="status">Delivered</li>

?

  • 写回答

1条回答 默认 最新

  • duanmiexi2275 2015-03-12 04:46
    关注

    Use an array:

    $status = array('Submitted', 'Delivered', ...);
    

    Then use $status[$order['status']] when you're displaying it.

    You can also do it in the SQL:

    SELECT username,
        CASE status
            WHEN 0 THEN 'Submitted'
            WHEN 1 THEN 'Delivered'
            ...
        END AS status,
        ...
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥100 有人会搭建GPT-J-6B框架吗?有偿
  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名