Php 如何使用单选按钮输入从文件中有选择地打印?

Php 如何使用单选按钮输入从文件中有选择地打印?,php,Php,我试图创建一个单页PHP页面,从用户先前选择的单选按钮中读取内容,并使用该单选按钮搜索文件并打印与文件信息插槽对齐的信息,但我无法让它实际打印。我不知道这是否只是因为它没有正确读取文件,没有正确搜索文件,或者其他任何可能错误的内容,如果这是非常明显的事情,请提前道歉。 文件的每一行都有4位信息,它们之间都有逗号:位置、位置类型和两个数字。这是第一行:罗坦,天然礁,28,41。我试图使用第一位,位置来搜索,因为单选按钮是基于位置的。我希望这是足够的信息 <input type="radio"

我试图创建一个单页PHP页面,从用户先前选择的单选按钮中读取内容,并使用该单选按钮搜索文件并打印与文件信息插槽对齐的信息,但我无法让它实际打印。我不知道这是否只是因为它没有正确读取文件,没有正确搜索文件,或者其他任何可能错误的内容,如果这是非常明显的事情,请提前道歉。 文件的每一行都有4位信息,它们之间都有逗号:位置、位置类型和两个数字。这是第一行:罗坦,天然礁,28,41。我试图使用第一位,位置来搜索,因为单选按钮是基于位置的。我希望这是足够的信息

<input type="radio" name"site" value="Roatan"> Roatan <br /></input>
Roatan
这就是单选按钮的格式,它与submit按钮集成在一个表单标签中

foreach ($dives as $i=>$record) {
        $dives = explode(",", $record);
        if (($site == "Roatan") and ($record[0] == "Roatan")) {
            print "<tr>
                <td> $dives[0] <br /></td>
                <td> $dives[1] <br /></td>
                <td> $dives[2] <br /></td>
                </tr>";
            $i++;
        }
    }
foreach($i=>$record){
$dive=爆炸(“,”,$record);
如果($site==“Roatan”)和($record[0]==“Roatan”)){
“打印”
$dive[0]
$dives[1]
$dives[2]
"; $i++; } }

这就是循环和条件语句的样子。

根据注释,您有一个输入错误

这应该让你开始

脚本示例:

使用
php-S localhost:8000 index.php从命令行运行,并使用从浏览器访问


.包装纸{
保证金:0自动;
填充:20px;
宽度:900px;
/*文本对齐:居中*/
边框:1px纯黑;
}
.失败{
颜色:红色;
}
.通过{
颜色:绿色;
}
结果

您选择了:

形式
价值1 价值2 价值3


首先,您的收音机应该使用
name=“site”
。其次,您的循环没有意义,因为您正在分配给
$dive
,而这正是您循环的名称。我会给循环中的临时名称起一个类似
$dive
的名称。如果这两种方法都不能解决问题,那么您就没有给我们太多的工作空间……为了将来的参考,我会将您的文件放在json格式中,然后在php中使用。你也应该结账。
<?php
// filename: index.php

$chosen_site = isset($_POST['site']) ? trim($_POST['site']) : null;
$file = "Roatan,Natural Reef,28,41\n Some,Thing,32,42\n Value1, Test, 89, 90";
$results = "";
$lines = explode("\n", $file);

?>
<html>
    <head>
    <style>
        .wrapper {
            margin: 0 auto;
            padding: 20px;
            width: 900px;
            /*text-align: center;*/
            border: 1px solid black;
        }
        .fail {
            color: red;
        }
        .pass {
            color: green;
        }
    </style>
    </head>
    <body>
    <div class="wrapper">
        <h1>Results</h1>
        <hr/>
        <p><b>You Chose:</b><?= json_encode($chosen_site) ?></p>
        <?php
        // For each line of the file.
        foreach ($lines as $line) {
            //Print result of each line:
            if(strpos($line, $chosen_site) !== false) { 
                echo '<p class="pass"><b>Match found:</b>';
                echo '<ul>';
                $parts = explode(',', $line);
                foreach ($parts as $part) {
                    echo '<li>'. $part . '</li>';
                }
                echo '</ul>';
                echo '</p>';
            } else {
                echo '<p class="fail"><b>Match not found: </b>' . $line . '</p>';
            }
        }
        ?>


        <h1>Form</h1>
        <hr/>
        <form method="post">
            <input type="radio" name="site" value="Value1">Value1</input>
            <input type="radio" name="site" value="Value2">Value2</input>
            <input type="radio" name="site" value="Value3">Value3</input>
            <br/>
            <br/>
            <input type="submit"/>
        </form>
    </div>
    </body>
</html>