集成嵌入式CSV文件 - PHP

时间:2016-06-15 22:53:54

标签: php html csv search

我正在尝试使用表单搜索通过PHP集成嵌入式CSV文件。

我的CSV看起来像这样:

ACCTNO        PRCLID    NOTICES
00109033-01   234962    2056, 3005, 1033
00104120-04   200921    2006, 3002, 3004, 2056, 1033
00170172-01   299573    2056, 3001, 3003, 3004, 1033
00106284-02   208709    1026, 2056, 3004, 1033
00150372-01   222376    2056, 3001, 2006, 1033

基本上我想要一个搜索框,用户输入00109033-01,并显示对应于2056,3005和1033(来自'NOTICES'列)的三个div。如果用户搜索了00104120-04,则会显示对应于2006,3002,3004,2056,1033(来自'NOTICES'列)的五个div。

我将为每个“通知”代码提供相应的div,其中一些与帐户相关,其他则不包含。

我知道如何嵌入CSV数据,但我正在努力训练审讯部分并展示相应的div。

任何提示,代码帮助,甚至是我正在努力实现的正确术语都将是一个很大的帮助。

1 个答案:

答案 0 :(得分:0)

以下是使用fgetcsv进行此操作的一种方法。

<?php
// will hold account number to search for
$acctno = isset($_GET['acctno']) ? $_GET['acctno'] : null; 
// will hold the notices that are found
$notices = null; 
// check if account number was given
if ($acctno) {
    // open the CSV file for reading
    if ($file = fopen('file.csv', 'r')) {
        // loop through rows of CSV file searching for account number
        while (($data = fgetcsv($file)) !== false) {
            // if there is a match, save its corresponding notices and stop looping
            if ($data[0] === $acctno) {
                $notices = $data[2];
                break;
            }
        }
        // close the CSV file
        fclose($file);
    }
}
?>
<!DOCTYPE html>
<html>
<head>
</head>
<body>
    <form action="" method="get">
        <label>Search</label>
        <input type="text" name="acctno" value="<?= $acctno ?>">
    </form>
    <p><?= $notices ?></p>
</body>
</html>