IF语句导致Catch错误消息

时间:2011-09-02 08:42:57

标签: php sql

我有一个PHP表单,其中SQL表中的一个字段显示为链接。但是我希望它显示除字段数据之外的其他内容,并且只有当该字段中包含某些内容时才显示。 这是一个演出列表,我想要显示“setlist”的链接。我不希望它像现在一样显示文件名,而是显示图像图标或类似“SET”的内容。

有人建议我添加

if ($row['gigsetlist']=="") {

代码,但这引发了一个Unexpected Catch ..错误消息。

以下是包含上述if语句的代码。 有人可以指出还有什么可能会丢失或冲突吗?

<?php 

try {

    require_once "pdo_testdb_connect.php";

    $dbh = testdb_connect ();

    $sql = "SELECT id, gigdate,  date_format(gigdate,'%d %M') as d, gigshortdesc, 
    gigsetlist FROM gigs WHERE gigdate 
    BETWEEN '1995-01-01' AND '1995-12-31' ORDER BY gigdate ASC";

    print '<table>';

    foreach($dbh->query($sql) as $row)
    {
        print '<tr>
        <td width=100>' . $row['d']  . ' </td>
        <td> ' . $row['gigshortdesc'] . '</td>
        <td>';
        if ($row['gigsetlist']=="")
        {
            print '<a href="sets/' . $row['gigsetlist'] . '.php" 
            onclick="return openWin  (this.href, 

            this.target, 480, 480, 1, 0, 0, 0, 0, 1);" 
            rel="nofollow" target="_setlist">' . $row['gigsetlist'] . '</a></td>
            </tr>';
        }

    }

    print '</table>';

    $dbh = null;

}

catch(PDOException $e)
{
    echo $e->getMessage()
;}?>

非常感谢

1 个答案:

答案 0 :(得分:0)

更改

自:

if ($row['gigsetlist']=="")

要:

if ($row['gigsetlist']!="")

你必须检查$ row ['gigsetlist']不等于空,这意味着它包含一些数据然后显示链接。