在php中使用复选框尝试读取信息

在php中使用复选框尝试读取信息,php,Php,我有一个php文件,它从txt文件中读取信息,并在屏幕上打印成以下行: 第1行[x]第2行[x] 等等等等等等 我试图在所有信息行旁边添加复选框,我设法做了一个for循环,根据读取的行数创建复选框 现在,我坚持的最后一件事是,我希望用户能够单击任何复选框,然后单击submit按钮,该按钮将在新的php文件上打印所选信息 如果用户勾选了第1行并提交,那么它应该在打开的php文件上显示文本字符串“第1行” 我做了一些研究,并设法使用isset方法,以找出它是否被检查,这是工作,但我仍然不确定如何阅读

我有一个php文件,它从txt文件中读取信息,并在屏幕上打印成以下行:

第1行[x]
第2行[x] 等等等等等等

我试图在所有信息行旁边添加复选框,我设法做了一个for循环,根据读取的行数创建复选框

现在,我坚持的最后一件事是,我希望用户能够单击任何复选框,然后单击submit按钮,该按钮将在新的php文件上打印所选信息

如果用户勾选了第1行并提交,那么它应该在打开的php文件上显示文本字符串“第1行”

我做了一些研究,并设法使用isset方法,以找出它是否被检查,这是工作,但我仍然不确定如何阅读信息,是一个新的php文件检查任何帮助将不胜感激谢谢

$filename = "file.txt";

$filepointer = fopen($filename, "r"); //open for read

$myarray = file ($filename);

// get number of elements in array with count
for ($counts = 0; $counts < count($myarray); $counts++)

{ //one line at a time
$aline = $myarray[$counts];

//$par = array();
$par = getvalue($aline);

if ($par[1] <= 200) 
{ 

print "<input type=checkbox name='test'/>"." ".$par[0]." "; 
print $par[1]." ";
print $par[2]." ";
print $par[3]." ";

}

}
$filename=“file.txt”;
$filepointer=fopen($filename,“r”)//开放阅读
$myarray=文件($filename);
//使用count获取数组中的元素数
对于($counts=0;$counts如果($par[1]我认为您可能想要创建一个数组来标识选中了哪些行?那么,您需要使用一个数组来命名您的复选框输入。您可以使用与PHP非常相似的语法,通过添加
[]
到输入名称。对于这种特定情况,您还需要显式索引数组键,您可以像
[index]
那样执行。在代码中演示这一点会更容易:

file1.php(已修复)):


thanx获取帮助,但当我运行php文件时,它只打印出“Line on was checked”与其从文本文件中打印信息,还不如在
file2.php
中再次将文件读入内存。请稍候,我将进行编辑。它给了我一个错误,提示:未定义的偏移量:-1,-此外,由于某些奇怪的原因,它没有显示count变量。@Hashey100我猜您没有选中任何框然后,编辑代码的唯一目的就是逐字打印所选行,它不会打印行号,尽管只需将打印行更改为类似
print“line$lineno:”。$myarray[$lineno-1];
可以解决这个问题。请确保您使用的是现在的file1代码,我在第一篇文章之后编辑了几个错误。
<?php

$filename = "file.txt";

// file() does not need a file pointer
//$filepointer = fopen($filename, "r"); //open for read

$myarray = file($filename);

print "<form action='file2.php' method='post'>\n";

// get number of elements in array with count
$count = 0; // Foreach with counter is probably best here
foreach ($myarray as $line) {

  $count++; // increment the counter

  $par = getvalue($line);

  if ($par[1] <= 200) {
    // Note the [] after the input name
    print "<input type='checkbox' name='test[$count]' /> ";
    print $par[0]." "; 
    print $par[1]." ";
    print $par[2]." ";
    print $par[3]."<br />\n";
  }

}

print "</form>";
<?php

  foreach ($_POST['test'] as $lineno) {
    print "Line $lineno was checked<br />\n";
  }
<?php

  $filename = "file.txt";

  $myarray = file($filename);

  foreach ($_POST['test'] as $lineno) {
    // We need to subtract 1 because arrays are indexed from 0 in PHP
    print $myarray[$lineno - 1];
  }