繁体   English   中英

PHP CSV文件查找帮助

[英]PHP csv file lookup assistance

我们公司的一个网站上有一个页面,该页面运行一些代码,该代码读取一个csv文件,并取决于输入的序列号,并返回该部分的手册列表。 目前,csv文件只有两列,一列是序列号,另一列是零件号,以匹配文件夹中类似命名的pdf。 我们最近搬到了Sage 200,并有了一个新的零件编号列表(对于现有零件),并且希望能够在第三列中添加这些新的零件代码。

我继承了这个网站,并且几乎不了解php,所以以为你们可能会指出正确的方向。 :)

我可以在页面上找到的代码是:

@$serial = $_POST['serialnobox'];
echo "You searched for serial $serial";
$file = nl2br(file_get_contents("./tkmanuals/serialnos.csv"));
if($strposition = strpos($file, "$serial")) {
    $strposition=$strposition+7;
    $br = strpos(substr($file, "$strposition", "50"),"
");
    $tspart = substr($file, "$strposition", "$br");
    $tspart = trim($tspart);
    echo "This is Track System: $tspart.
";
}
else
{
    echo "You searched for: $serial. Search Again.

任何帮助或指针将不胜感激。

如果没有选择进入数据库,那么以下php代码(改编自http://us2.php.net/fgetcsv的示例1)可以为您提供一个起点:

@$serial = $_POST['serialnobox'];
$row = 1;
if (($handle = fopen("./tkmanuals/serialnos.csv", "r")) !== FALSE) {
    while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
        if($data[0]=="$serial") {
            echo "The first number is $data[1] and the second number is $data[2]<br>";
        }
    }
    fclose($handle);
}

您要如何处理这些取决于您。 我无法从您的代码中确定序列号是否为字符串-在这种情况下,应使用字符串比较而不是==符号来检查第一列data[0]的序列号。

我再次建议建立一个数据库。 您可以为CAD工程师创建一个简单的用户界面,以添加/编辑零件和零件编号(换句话说,“隐藏”这是用户的数据库这一事实)。 您肯定会最终只获得一份信息(包括备份),这是数据完整性的重要一步:当您拥有一份以上的信息时,它们将不同步...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM