我的文字文件如下:
12345 234 455
23 67 9666 13 56
1234 777 900
每当我检查首选复选框时,只显示每行的第一个值,其他值不会出现,我的意思是第一行只显示12345而且不会出现234 455; 有人帮助我吗? 每当我选择任何复选框时,我都需要选择或显示完整的行包含
process.php
require 'connect.inc.php';
if(isset($_POST['check']) && ! empty($_POST['check']))
{
$check=$_POST['check'];
$numberOfCheck=count($check);
echo ("You have checked $numberOfCheck checkboxes : ");
for ($i=0; $i<$numberOfCheck; $i++)
{
echo '<br>';
echo ($check[$i]. " ");
$VarCheck=$check[$i];
$name=time();
$myFile=fopen($name,"a");
$txt=$VarCheck;
fwrite($myFile,$txt);
fclose($myFile);
}
}
else
{
echo "Zero check selected";
}
?>
这是我根据文件文本行数生成的动态表
<?php
echo '<form method="POST" action="process.php">';
$file = fopen("text.txt","r");
echo '<table border="1">';
while(! feof($file))
{
$data= fgets($file);
echo '<tr>
<td><input type="checkbox" name="check[]" value='.$data.'</td>
<td>'.$data.'</td></tr>';
}
fclose($file);
echo '<input type="submit" value="send">';
echo '</form>';
?>
答案 0 :(得分:1)
您忘记关闭(>
)输入标记,并为输入值设置"
。
您必须更改此行:
<td><input type="checkbox" name="check[]" value='.$data.'</td>
为:
<td><input type="checkbox" name="check[]" value="'.$data.'"></td>
编辑测试:
文件text.txt
12345 234 455
23 67 9666 13 56
1234 777 900
Page 1.php
<?php
echo '<form method="POST" action="process.php">';
$file = fopen("text.txt","r");
echo '<table border="1">';
while(! feof($file))
{
$data= fgets($file);
if(trim($data) != '') {
echo '<tr>
<td><input type="checkbox" name="check[]" value="'.$data.'"></td>
<td>'.$data.'</td></tr>';
}
}
fclose($file);
echo '<input type="submit" value="send">';
echo '</form>';
?>
Page process.php
<?php
if(isset($_POST['check']) && ! empty($_POST['check']))
{
$check=$_POST['check'];
$numberOfCheck=count($check);
echo ("You have checked $numberOfCheck checkboxes : ");
for ($i=0; $i<$numberOfCheck; $i++)
{
echo '<br>';
echo ($check[$i]. " ");
$VarCheck=$check[$i];
$name=time();
$myFile=fopen($name,"a");
$txt=$VarCheck;
fwrite($myFile,$txt);
fclose($myFile);
}
}
else
{
echo "Zero check selected";
}
?>