当前位置: 首页 > 知识库问答 >
问题:

用户输入一个在瓶子中找到的代码,根据该代码,图形将改变

席波娃
2023-03-14

我对php不是很有经验,我请求你的帮助。我需要通过插入从csv文件中提取的代码来显示至少3个元素。我创建了三个函数,因此创建了三个循环,但我希望将它们合并为一个。有办法吗?

我附上了我创建的代码和链接http://7c81b.wineqrcode.com/

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
    "http://www.w3.org/TR/html4/strict.dtd">
<HTML>
    <HEAD>
        <TITLE>Password code</TITLE>
    </HEAD>
    <BODY>
        <br>Enter the code shown on the bottle <br>
        <form method="post">
            <input type="text" name="input"/> <!-- thiss is where the user enters text -->
            <input type="submit" name="submit" value="submit"> 
        </form><br><br>
        <?php
            
            $output= (isset($_POST['submit']))?$_POST['input']:'';
            
            $annate2014 = fopen('2014.csv', 'r');
            $annate2015 = fopen('2015.csv', 'r');
            $annate2016 = fopen('2016.csv', 'r');
           
           //Anno 2014
            while (($line2014 = fgetcsv($annate2014)) !== FALSE) {
              echo '<p><b>Codici 2014</b></p>';
              print_r($line2014);
              
                    if (in_array($output, $line2014)) {
                        echo '<p> You have found the bottle of the year 2014 </p>';
                    }
            }
            fclose($annate2014);
            
            //Anno 2015
            while (($line2015 = fgetcsv($annate2015)) !== FALSE) {
              echo '<p><b>Codici 2015</b></p>';
              print_r($line2015);
              
                    if (in_array($output, $line2015)) {
                        echo '<p> You have found the bottle of the year 2015 </p>';
                    }
            }
            fclose($annate2014);
            
            //Anno 2016
            while (($line2016 = fgetcsv($annate2016)) !== FALSE) {
              echo '<p><b>Codici 2016</b></p>';
              print_r($line2016);
              
                    if (in_array($output, $line2016)) {
                        echo '<p> You have found the bottle of the year 2016 </p>';
                    }
            }
            fclose($annate2016);
            
            ?>
            
            
        
        </BODY>
</HTML>

非常感谢

共有1个答案

邹祺
2023-03-14

你真的可以把三年合并为一年。例如:

$input = (isset($_POST['submit'])) ? $_POST['input'] : '';
$years = ['2014', '2015', '2016'];

foreach ($years as $year)
{
    $annate = fopen($year . '.csv', 'r');
    while ($line = fgetcsv($annate)) {
        echo "<p><b>Codici $year </b></p>";
        print_r($line);
        if (in_array($input, $line)) {
            echo "<p>You have found the bottle of the year $year</p>";
        }
    }
    fclose($annate);
}    

我没有测试代码。

正如你所看到的,现在增加更多的年数是很容易的。

 类似资料:
  • 1-我们创建了一个webpart来使用app services/graph api(/users/username{passwordprofile:{“password”:“xxxx”})更改用户的密码 2-因为Directory.AccessasUser.All是一个委托的权限,我们需要将用户添加到正确的角色中,才能获得更改密码的权限。

  • 问题内容: 我必须为计算机科学课做一个项目。问题是: 图书馆的顾客最多可以借三本书。因此,一个顾客有一个名字和最多三本书。一本书有作者和书名。设计并实现两个类,分别是Patron和Book,以表示这些对象和以下行为: 客户可以实例化带有标题和作者的书 客户可以检查但不能修改书名或作者 客户可以向顾客询问是否借用了给定的书(按书名识别)。 客户可以告诉顾客退还给定的书(按书名识别)。 客户可以告诉顾

  • 我无法将表格发送到数据库。我已经试了一个小时来解决这个问题;我用“echo mysqli_error();”将代码打了个谜,但并没有收到任何错误,只是数据库中缺少新数据(似乎提交表单也并没有重新加载页面来发送信息)。数据库使用config.php、connectDB.php和header.php为我的其余页面工作,因此问题不在数据库设置中。我相信错误在“isset($\u POST['submit

  • 问题内容: 我要编写的程序有问题。用户输入正整数,否则程序会提示用户直到他们输入。完成后,程序将打印与用户输入相对应的菱形形状。 到目前为止,我有这张照片可以打印出该图形的左对角线,但无法弄清楚如何打印其余的图形。这是代码: 问题答案: 用户输入正整数,否则程序会提示用户,直到他们输入 您需要循环扫描 现在您可以删除该验证 现在,我在检查循环时意识到的第一件事是不会编译,因为您有一个比较运算符,后

  • 问题内容: 有没有一种方法(或编辑器)可以让我从源文件(例如* .java)中链接图像/文件/ http链接,有点像富文本文档? 这样,在阅读代码时,我可以快速查看附加的图像(增强注释),而不用打开浏览器等。 问题答案: Javadocs是HTML,因此您可以在其中嵌入图片: Eclipse会很高兴在javadoc视图中或将鼠标悬停在注释上时向您显示图像。其他IDE可能会或可能不会这样做。 显然,

  • 我试图得到一些代码语法高亮我写的一些文档,我使用HAML和Highlight.js这将适用于像这样的单行Ruby代码(虽然高亮不是很好): 但是如果我尝试在< code>pre和< code>code标记中编写一些CSS,就像这样: 我得到“非法嵌套:纯文本嵌套是非法的。”错误,由于CSS末尾的括号。 有人知道使用HAML在网页上编写代码示例(主要是SASS、Ruby、HAML、Coffeescr