如何设置链接取决于数据库列中的值

时间:2017-07-31 20:12:21

标签: php

我想在html表中设置一个链接。让我们说jone有100分,它会显示$url2或者他和lina有90分,它会显示$url1

这是我的破码。我不知道怎么做。并告诉我我的错误在哪里。

<td>
<? 
        if ( (int)$jumlah_bv < 100 ){


echo "<a class="btn btn-info" href="buy1.php?user_id= echo $row['user_id']; " >Daftar VIP</a>";
 }
 else 
 {

echo "<a class="btn btn-info" href="buy2.php?user_id= echo $row['user_id']; " >Belian</a>";
 }

    ?>      
    </td>

2 个答案:

答案 0 :(得分:1)

这样的事情怎么样?对我来说,主要问题似乎是在if内而不是外部分配两个URL变量。

<td>
<?php
    $url1 = "buy1.php";
    $url2 = "buy2.php";
    $href = "";
    $linktext = "";

    if ( $jumlah_bv < 100 ){
        $href = $url1;
        $linktext = "Daftar VIP";
    }
    else 
    {
        $href = $url2;
        $linktext = "Belian";
    }
    echo '<a class="btn btn-info" href="'. $href .'?user_id='. $row['user_id'] .'">'. $linktext .'</a>';
?>
</td>

答案 1 :(得分:1)

您的逻辑关闭,您只能在if条件下分配和输出。按处理器读取它

如果$ point小于100,则执行以下行:

$url1 = "<a class="btn btn-info" href="url1.php?user_id= echo $row['user_id']; " >this is url 1</a>";
$url2 = "<a class="btn btn-info" href="url2.php?user_id= echo $row['user_id']; " >this is url 2</a>";
echo $url1;

如果不执行这些行:

echo $url2;

正如您所看到的,$url2未定义。我认为更简单的方法是使用三元:

$page = $point < 100 ? '1' : '2';
echo "<a class='btn btn-info' href='url{$page}.php?user_id={$row['user_id']}'>this is url {$page}</a>";

您的报价使用不正确,并且正在尝试输出作业。

更新,按修订后的问题:

if($point < 100) {
      $page = 'page1.php';
      $text = 'page 1 text';
} else {
      $page = 'page2.php';
      $text = 'page 2 text';
} 
echo "<a class='btn btn-info' href='{$page}?user_id={$row['user_id']}'>{$text}</a>";