2017-04-03 50 views
0

我需要一些幫助在選項值中使用函數。 我剛開始使用/學習功能,並寫了這一點:如何在選擇輸入類型中使用函數

*function selectNew($dbcon) { 
    $sql = 'SELECT id, item, comment, date, time, important FROM item ORDER BY ASC id'; 
    foreach ($dbcon->query($sql) as $row) { 
    print $row['item'] . "\t"; 
    print $row['comment'] . "\t"; 
    print $row['date'] . "\n"; 
    print $row['time'] . "\n"; 
    print $row['important'] . "\n"; 
    } 
}* 

我想使用這個在:如果我選擇這

<table> 
    <tr><th>Select by:</th><td><select> 
     <option value="<?php selectNew ?>">Newest</option> 
    </select></td></tr> 
</table> 

我想呼應,從我的數據庫升序排列數據ID。

這是可能的還是我需要以其他方式做到這一點?

謝謝,

+0

您的函數可能會返回多行。同樣在你的用例中,你不能在value屬性中放置多個值,更不用說多行了。 –

+0

使用phpAdmin運行您的查詢,然後查看結果。此外,創建您期望看到的純HTML結果(而不是您使用函數調用顯示的結果)。最後,由於你正在學習,你應該認識到,當你調用函數時,你需要傳遞函數聲明中指定的參數。 –

+0

謝謝,我在phpmyadmin中試過了,發現問題了! – Youri

回答

0

你會希望從循環內輸出你的選項標籤。

function selectNew($dbcon) { 
    $sql = 'SELECT id, item, comment, date, time, important FROM item ORDER BY ASC id'; 
    foreach ($dbcon->query($sql) as $row) { 
    echo "<option>"; 
    print $row['item'] . "\t"; 
    print $row['comment'] . "\t"; 
    print $row['date'] . "\n"; 
    print $row['time'] . "\n"; 
    print $row['important'] . "\n"; 
    echo "</option>"; 
    } 
} 

<table> 
    <tr><th>Select by:</th><td><select> 
     <?php selectNew($dbConn); ?> 
    </select></td></tr> 
</table> 
相關問題