下面的代码基本上是在一个文本文件中读取并将其显示在屏幕上,每行附近都有复选框。但是现在我希望用户能够检查任何框,然后在新的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
$filename = "file.txt";
$myarray = file($filename);
?>
答案 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);