【发布时间】:2019-06-10 07:13:33
【问题描述】:
我正在做一个快速项目,我正在创建一个可以从任何浏览器访问的 php 网页。我只知道 PHP 函数的基础知识,所以需要一些帮助。
我想看看我是否能做的是创建一个文件,我的同事可以在其中输入产品代码,该表单将显示有关产品的相关信息。难点是信息会在excel上管理,需要更新时以CSV的形式上传到服务器。
我基本上是在寻找执行以下操作的一段代码:
- 网页使用 POST 获取产品代码
- PHP 解析电子表格的第一列并搜索产品代码
- 找到产品代码后,返回行号
- PHP 然后将行解析为数组
- 然后我根据需要在网页中打印出数组。
POST 功能一切正常,但在解析方面,我目前得到的最好的是:
<?php
if ( $code == "") { $codechk = $blank; } else { $codechk = $code; }
$ch = fopen("https://focus-8.com/sites/ds/prodinfo.csv", "r");
$header_row = fgetcsv($ch);
/* This will loop through all the rows until it reaches the end */
while($row = fgetcsv($ch)) { if (in_array($codechk, $row)) { echo '<div>' . implode(' | ', $row) . ' </div>'; } } ;
$code 是表单中的产品代码
$blank 是一个占位符,如果代码不存在,则强制显示错误消息。
当我在表单中输入产品代码时,这会正确打印正确的行。但是,我的知识还不够先进,无法弄清楚如何将其拉入数组而不是一次打印出来。
一旦我把它放在一个数组中,我就会把它打印在一个表格中,如下所示:
<table>
<tr>
<td>Product Code </th>
<td> <?php echo $prodinfo[0] ?> </th>
</tr>
<tr>
<td>Product Name</td>
<td> <?php echo $prodinfo[1] ?> </td>
</tr>
<tr>
<td>Product Weight</td>
<td> <?php echo $prodinfo[2] ?> </td>
</tr>
</table>
任何帮助很高兴,谢谢!
【问题讨论】:
-
如果有更好的方法来解决这个问题,请随时发表评论。我确实想知道一个自动抓取 CSV 并将其推送到 SQL 数据库中的函数,然后 PHP 会查看 SQL。然而,这似乎有点漫长,如果可能的话尽量保持简单!
标签: php forms csv parsing fgetcsv