阅读文本文件和复选框 - PHP

时间:2012-07-01 11:46:22

标签: php

下面的代码基本上是在一个文本文件中读取并将其显示在屏幕上,每行附近都有复选框。但是现在我希望用户能够检查任何框,然后在新的PHP文件中显示所选结果 - 我想我必须再次阅读文本文件并以某种方式将其引用到数组中,但我仍然卡住了,所以任何帮助都会受到赞赏。

谢谢。

第一个php文件

<?php
$filename = "file.txt";
$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文件

<?php
$filename = "file.txt";
$myarray = file($filename);
?>

2 个答案:

答案 0 :(得分:1)

我认为你的问题太复杂了。您可以给复选框value atribute并从第二页读取数组。从第二页上的kus print_r ($_POST)开始,以帮助您了解必须使用的内容。

答案 1 :(得分:1)

1)考虑文本文件的格式(可能类似于"Name1-Value 1-true\nName1-Value2-false"
2)学习this功能
3)使用默认选项
创建文件 4)创建一个打开文件的PHP脚本,创建一个数组并打印resoult - 例如:

$handle = fopen('./file.txt','r');
$fileString = fread($handle,filesize('./file.txt'));
$handle = null; //Similar to unset($handle);
$array = explode($fileString, "\n");
echo '<form action="./script2.php">';
foreach ($array as $value) {
    $value = explode($value, "-");
    echo '<input type="checkbox" name="'.$value[1].'" value="'.$value[2].'" checked="';
    if ($value[3]==true) {
        echo 'checked" /><br />';
    } else {
        echo '" /><br />';
    }
}

5)制作编辑文件的第二个脚本 - 例如:

if ($_GET == null;) {exit("He's dead, Jim!");}
$handle = fopen('./file.txt','r');
$fileString = fread($handle,filesize('./file.txt'));
    //Do something with the string :D
$handle = fopen('./file.txt','w');
fwrite($handle,$fileString);